def fun27():
L = []
L2 = []
L3 = []
for i1 in range(1,10):
for i2 in range(1,10):
for i3 in range(1,10):
if i3!=i2 and i2!=i1 and i3!=i1:
L.append(i1)
L.append(i2)
L.append(i3)
for k in range(len(L)//3):
L2.append(L[3*k:3*(k+1)])
for t in range(len(L2)):
L2[t]
for t1 in range(len(L2)):
L2[t1]
for t2 in range(len(L2)):
L2[t2]
if (((L2[t][0]+L2[t1][1]+L2[t2][2])==15) and ((L2[t][2]+L2[t1][1]+L2[t2][0])==15)) and (sum(L2[t])==15) and (sum(L2[t1])==15) and (sum(L2[t2])==15)and ((L2[t][0]+L2[t1][0]+L2[t2][0])==15)and ((L2[t][1]+L2[t1][1]+L2[t2][1])==15) and ((L2[t][2]+L2[t1][2]+L2[t2][2])==15):
L3.append(L2[t])
L3.append(L2[t1])
L3.append(L2[t2])
print(L3)
L3 = []
结果如下:
[[1, 9, 5], [9, 5, 1], [5, 1, 9]]
[[2, 7, 6], [9, 5, 1], [4, 3, 8]]
[[2, 8, 5], [8, 5, 2], [5, 2, 8]]
[[2, 9, 4], [7, 5, 3], [6, 1, 8]]
[[3, 5, 7], [9, 5, 1], [3, 5, 7]]
[[3, 7, 5], [7, 5, 3], [5, 3, 7]]
[[3, 8, 4], [6, 5, 4], [6, 2, 7]]
[[4, 3, 8], [9, 5, 1], [2, 7, 6]]
[[4, 5, 6], [7, 5, 3], [4, 5, 6]]
[[4, 6, 5], [6, 5, 4], [5, 4, 6]]
[[4, 8, 3], [4, 5, 6], [7, 2, 6]]
[[4, 9, 2], [3, 5, 7], [8, 1, 6]]
[[5, 1, 9], [9, 5, 1], [1, 9, 5]]
[[5, 2, 8], [8, 5, 2], [2, 8, 5]]
[[5, 3, 7], [7, 5, 3], [3, 7, 5]]
[[5, 4, 6], [6, 5, 4], [4, 6, 5]]
[[5, 6, 4], [4, 5, 6], [6, 4, 5]]
[[5, 7, 3], [3, 5, 7], [7, 3, 5]]
[[5, 8, 2], [2, 5, 8], [8, 2, 5]]
[[5, 9, 1], [1, 5, 9], [9, 1, 5]]
[[6, 1, 8], [7, 5, 3], [2, 9, 4]]
[[6, 2, 7], [6, 5, 4], [3, 8, 4]]
[[6, 4, 5], [4, 5, 6], [5, 6, 4]]
[[6, 5, 4], [3, 5, 7], [6, 5, 4]]
[[6, 7, 2], [1, 5, 9], [8, 3, 4]]
[[7, 2, 6], [4, 5, 6], [4, 8, 3]]
[[7, 3, 5], [3, 5, 7], [5, 7, 3]]
[[7, 5, 3], [1, 5, 9], [7, 5, 3]]
[[8, 1, 6], [3, 5, 7], [4, 9, 2]]
[[8, 2, 5], [2, 5, 8], [5, 8, 2]]
[[8, 3, 4], [1, 5, 9], [6, 7, 2]]
[[9, 1, 5], [1, 5, 9], [5, 9, 1]]
我想问一下,格子里面的数,在三个数组中不能重复出现?
我这个程序的执行效率比较慢
|