#1243. [GESP样题 四级] 填幻方
[GESP样题 四级] 填幻方
题目描述
在一个 的空方格中,按下面的规则填入 到 ,得到每一行、每一列和两条对角线上的数之和都相同的幻方。
- 把 填在首行的正中间。
- 填完一个数后,从它的位置出发,尝试把下一个数填在右上方的格子里。越过上边界会回到最后一行,越过右边界会回到第一列。
- 如果目标格已经有数,就改填在上一个数的正下方。向下越界时回到第一行。
重复上述步骤直至填满。
输入格式
一行一个奇数 。
输出格式
按行输出生成的幻方,每行的数用空格隔开。
3
8 1 6
3 5 7
4 9 2
数据范围
,且 为奇数。
来源
洛谷 B3940 · CCF GESP C++ 四级。