fct = lambda k:(
[k,k,k,0,0,0,0,0,0],
[0,0,0,0,0,0,k,k,k],
[k,0,0,k,0,0,k,0,0],
[0,0,k,0,0,k,0,0,k],
[k,k,0,k,k,0,0,0,0],
[0,k,k,0,k,k,0,0,0],
[0,0,0,k,k,0,k,k,0],
[0,0,0,0,k,k,0,k,k],
[0,k,0,k,k,k,0,k,0])
from itertools import product
f = lambda x: '\n'.join(' '.join(map(str, x[3 * i: 3 * (i + 1)])) for i in range(3))
xs = [3,3,0,2,2,2,2,1,2]
def solve(xs):
for p in product(range(4), repeat=9):
t = xs[:]
for i in range(9):
t = [(x + fct(p[i])[i][j]) % 4 for j, x in enumerate(t)]
if all(e == 0 for e in t):
return p
print(solve(xs))
def verify(xs, s):
e = [
[1,1,1,0,0,0,0,0,0],
[0,0,0,0,0,0,1,1,1],
[1,0,0,1,0,0,1,0,0],
[0,0,1,0,0,1,0,0,1],
[1,1,0,1,1,0,0,0,0],
[0,1,1,0,1,1,0,0,0],
[0,0,0,1,1,0,1,1,0],
[0,0,0,0,1,1,0,1,1],
[0,1,0,1,1,1,0,1,0]
]
for i in s:
xs = [(x + e[i][j]) % 4 for j, x in enumerate(xs)]
print(xs)
return xs
sol = (8,2,7,1)
print(verify(xs, sol))
To embed this program on your website, copy the following code and paste it into your website's HTML: