我正在尝试编写一个通用程序来检查17x17 问题已解决!, 4 色 17x17 网格,没有单色矩形。解决方案链接:17.txt。
这是我写的:
from itertools import product
def is_solution(myfile,m,n):
""" m-lines, n-columns """
grid = [c.strip() for c in line.split(',')] for line in open(myfile).readlines()]
for x0,y0 in product(xrange(m),xrange(n)):
start = grid[x0][y0]
for x in xrange(x0+1,m):
if grid[x][y0] == start:
for y in xrange(y0+1,n):
if grid[x0][y] == start == grid[x][y]:
return False
return True
print is_solution('17.txt',17,17)
有没有更易读、更简洁或更有效的方式(按优先级顺序)来写这个?也许是不同数据结构的不同方法......由于我目前正在学习 Python,因此非常欢迎任何建议。