大榕树 \ 信息学奥赛 \ 解题报告

偶幻方的求解方法

原文链接:http://www.mydrs.org/program/list.asp?id=462

1   2  3  4           1   15   14   4
5   6  7  8    =>     12   6    7   9 
9  10 11 12           8   10   11   5
13 14 15 16           13  3    2   16

也就是说对于一个4*4的幻方,把数字按照正常顺序填入格子以后

----------------------
|     |  *  | *  |    |
----------------------
|  *  |     |    |  * |
----------------------
|  *  |     |    |  * |
----------------------
|     |  *  |  * |    |
-----------------------
把上图中标上号的格子按照整个表格中心对称交换就能得到解。

同样的,对于其他n mod4=0的情况
比如8*8
-------------------------
|  |  | *| *| *| *|  |  |
-------------------------
|  |  | *| *| *| *|  |  |
-------------------------
| *| *|  |  |  |  | *| *|
-------------------------
| *| *|  |  |  |  | *| *|
-------------------------
| *| *|  |  |  |  | *| *|
-------------------------
| *| *|  |  |  |  | *| *|
-------------------------
|  |  | *| *| *| *|  |  |
-------------------------
|  |  | *| *| *| *|  |  |
-------------------------
正常顺序填入以后,把有标记的格子按照整个表格中心对称交换,就能得到幻方了
 
应该能够看到规律了吧!对于n=12 16 20…… 这样的规律同样适用

对于奇幻方(德拉·鲁布算法)和n mod 4=0 的偶幻方(上面讲的构造)应该算是完美解决的了,但是对于n mod 4=2的偶幻方………………:-)


ps:需要的话我可以贴一下程序

这个构造的方法绝对是原创的,那天数学课为了验证12*12 在一张纸上密密麻麻了画了表格,还算了好久来验证这个是不是幻方(当时怎么就没想到用pascal验证一下),可怜的我………………~~~~~~~~


 


作者:qinhy
来源:原创
时间:2003-02-10

上一篇:2003年信息学冬令营测试
下一篇:动态规划空间“降一维”

大榕树 版权所有 ©1999-2006