七巧板涂色算法(Python)

描述:有如图所示的七巧板,试编写算法,使用至多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+
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值