colorList = [0, 1, 2, 3]
pointList = []
amount = 0
class Point(object):
def __init__(self):
super(Point, self).__init__()
self.neibors = []
self.color = None
def paint(self, c):
self.color = c
def clean(self):
self.color = None
def getLeftOverColors(self):
copyOfColorList = colorList[0 : 4]
for neibor in self.neibors:
nc = neibor.color
if nc in copyOfColorList:
copyOfColorList.remove(nc)
return copyOfColorList
def main():
global pointList
p0 = Point()
p1 = Point()
p2 = Point()
p3 = Point()
p4 = Point()
p5 = Point()
p0.neibors = [p1, p2, p4]
p1.neibors = [p0, p2, p5]
p2.neibors = [p0, p1, p3]
p3.neibors = [p2, p4, p5]
p4.neibors = [p0, p3, p5]
p5.neibors = [p4, p3, p1]
pointList = [p0, p1, p2, p3, p4, p5]
paintPoint(p0)
print(amount)
def paintPoint(p):
global amount
colors = p.getLeftOverColors()
lastOne = isLastOne()
for c in colors:
p.paint(c)
if lastOne:
amount += 1
else:
for currentNeibor in p.neibors:
if currentNeibor.color == None:
paintPoint(currentNeibor)
break
p.clean()
def isLastOne():
global pointList
paintedNum = 0
for p in pointList:
if p.color != None:
paintedNum += 1
return paintedNum == 5
if __name__ == "__main__":
main()
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有