华为OD机试 - 九宫格(Java & JS & Python)
2023-09-14 09:04:03 时间
题目描述
九宫格是一款广为流传的游戏,起源于河图洛书。
游戏规则是:1到9九个数字放在3×3的格子中,要求每行、每列以及两个对角线上的三数之和都等于15.
在金麻名著《射雕英雄传》中黃蓉曾给九宫格的一种解法,口诀:戴九恩一,左三右七,二四有肩,八六为足,五居中央。解法如图所示。
现在有一种新的玩法,给九个不同的数字,将这九个数字放在3×3的格子中,要求每行、每列以及两个对角线上的三数之积相等(三阶积幻方)。其中一个三阶幻方如图:
解释:每行、每列以及两个对角线上的三数之积相等,都为216。请设计一种算法,将给定的九个数宇重新排列后,使其满足三阶积幻方的要求。
排列后的九个数宇中:第1-3个数字为方格的第一行,第4-6个数宇为方格的第二行,第7-9个数字为方格的第三行。
输入描述
九个不同的数宇,每个数字之间用空格分开。
0<数字<10^7。0<排列后满足要求的每行、每列以及两个对角线上的三数之积 < 2^31-1。
输出描述
九个数字所有满足要求的排列,每个数字之间用空格分开。每行输出一个满足要求的排列。
要求输出的排列升序排序,即:对于排列A (A1.A2.A3…A9)和排列B(B1,B2,B3…B9),从排列的第1个数字开始,遇到Ai<Bi,则排列A<排列B (
相关文章
- Atitit 调用另外语言的功能 目录 1. Waht 常见的语言java python js sql xml h5 c# php等之间的互相调用1 2. 为什么需要互相调用why1 3. 常
- 华为OD机试 - 最优资源分配(Java & JS & Python)
- 华为OD机试 - 识图谱新词挖掘(Java & JS & Python)
- 华为OD机试 - 查找单入口空闲区域(Java & JS & Python)
- 华为OD机试 - 通信误码(Java & JS & Python)
- 华为OD机试 - 最短木板长度(Java & JS & Python)
- 华为OD机试 - 区间交叠问题(Java & JS & Python)
- 华为OD机试 - 完全二叉树非叶子部分后序遍历(Java & JS & Python)
- 华为OD机试 - 比较两个版本号的大小(Java & JS & Python)
- 华为OD机试 - 最多颜色的车辆(Java & JS & Python)
- 华为OD机试 - 免单统计(Java & JS & Python)
- 华为OD机试 - 最大时间(Java & JS & Python)
- 华为OD机试 - 机器人走迷宫(Java & JS & Python)
- 华为OD机试 - 可以组成网络的服务器(Java & JS & Python)
- 华为OD机试 - 玩牌高手(Java & JS & Python)
- 华为OD机试 - 最大矩阵和(Java & JS & Python)
- Java调用Python脚本:轻松实现两种语言的互操作性