Monday, October 2, 2017

PuzzlOR Coins Problem

PuzzlORcoins
In [1]:
import itertools

rowsum = [11,12,25]
colsum = [21,16,11]
In [2]:
row0set = set()
row1set = set()
row2set = set()

for c in itertools.product([1,5,10],repeat=3):
    if sum(c)==rowsum[0]:
        row0set.add(c)
    if sum(c)==rowsum[1]:
        row1set.add(c)
    if sum(c)==rowsum[2]:
        row2set.add(c)
        
print(row0set)
print(row1set)
print(row2set)
{(1, 5, 5), (5, 5, 1), (5, 1, 5)}
{(1, 10, 1), (10, 1, 1), (1, 1, 10)}
{(10, 10, 5), (10, 5, 10), (5, 10, 10)}
In [3]:
for c in itertools.product(row0set,row1set,row2set):
    if sum([c[i][0] for i in range(3)])==colsum[0] and  \
    sum([c[i][1] for i in range(3)])==colsum[1] and     \
    sum([c[i][2] for i in range(3)])==colsum[2]:
        A,B,C=c
        print(A)
        print(B)
        print(C)
(1, 5, 5)
(10, 1, 1)
(10, 10, 5)