原题链接:蓝桥杯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、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复