描述:有如图所示的七巧板,试编写算法,使用至多4种不同颜色对七巧板进行涂色(每块七巧板一种颜色),要求相邻区域的颜色互不相同,打印输出所有可能的涂色方案。
测试:结果
[1, 2, 1, 3, 2, 1, 4]
[1, 2, 1, 3, 2, 4, 4]
...
[4, 3, 4, 2, 3, 1, 1]
[4, 3, 4, 2, 3, 4, 1]
产生的总次数:672
class A:
def __init__(self, sum = 0):
self.sum = sum
def add(self):
self.sum = self.sum + 1
def print(self):
print("产生的总次数:{}".format(self.sum))
#检查第i块七巧板放第j种颜色是否冲突
def check(i,j):
for k in range(0,i):
#第i块和第k块七巧板相连,且第k块颜色为第j种颜色
if (1==data[i][k] and v[k] == j):
return False
k = k+