原题链接:蓝桥杯2017年第八届真题-九宫幻方
解题思路:
一共有8种情况。
cubes = [[6,7,2,1,5,9,8,3,4],
[8,3,4,1,5,9,6,7,2],
[2,9,4,7,5,3,6,1,8],
[6,1,8,7,5,3,2,9,4],
[2,7,6,9,5,1,4,3,8],
[4,3,8,9,5,1,2,7,6],
[8,1,6,3,5,7,4,9,2],
[4,9,2,3,5,7,8,1,6]
]
参考代码:
mapL = [list(map(int,input().split())) for _ in range(3)]
cubes = [[6,7,2,1,5,9,8,3,4],
[8,3,4,1,5,9,6,7,2],
[2,9,4,7,5,3,6,1,8],
[6,1,8,7,5,3,2,9,4],
[2,7,6,9,5,1,4,3,8],
[4,3,8,9,5,1,2,7,6],
[8,1,6,3,5,7,4,9,2],
[4,9,2,3,5,7,8,1,6]
]
cube = []
r = []
for i in mapL:
for j in i:
cube.append(j)
for i in range(8):
flag = True
for j in range(9):
if cube[j] != cubes[i][j] and cube[j] != 0:
flag = False
break
if flag:
r.append(i)
if len(r) == 1:
for i in range(9):
print(cubes[r[0]][i],end=" ")
if (i+1)%3 == 0:
print()
else:
print("Too Many")0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复