三、穿心对调法
在第 2 页,我们给出了将四阶自然方阵的两条对角线上各个数倒排, 制作四阶幻方的方法。这种倒排,实际上是将两条对角线上的四对成中心对称的数同时进行对调。这一节介绍的穿心对调法是这种方法的推广。把偶数阶方阵平均分成 4 个小方阵,每一个小方阵称为原来方阵的“区”,分别称为左上区、右上区、左下区、右下区。八阶方阵的每一区是四阶方阵。
在图 4 — 6 中,从 A 图到 B 图的对调是一种特殊的对调。为了便于介绍这种对调,我们在八阶初始方阵的左上区任取一个数记作 a 、与数 a 成 中心对称的数记作 b 、与数 a 成左右对称的数记作 c 、与数 a 成上下对称的数记作 d (显然,数 c 与 d 也是成中心对称的)。那么:在这种对调方法中, 数 a 与 b 、数 c 与 d 这两对成中心对称的数总是同时对调或者同时不对调 。由于 a 、 b 、 c 、 d 这四个数显然在每一区各分布一个,如果这四个数同时参与对调,我们只要标记左上区的数 a 所在的方格就可以了,在图 4 — 6B 中,我们标记了左上区的 8 个方格,这 8 个方格就能够代表整个幻方中应对调的 16 对数。湖北曹陵先生称这种特殊的对调为 穿心对调法 。这是制作双偶数阶中心对称幻方的一种很重要的方法。穿心对调法是制作双偶数阶完美幻方的通用方法。
1 2 3 4 5 6 7 8 1 2 62 61 60 59 7 8
9 10 11 12 13 14 15 16 56 55 11 12 13 14 50 49
17 18 19 20 21 22 23 24 17 18 46 45 44 43 23 24
25 26 27 28 29 30 31 32 40 39 27 28 29 30 34 33
33 34 35 36 37 38 39 40 32 31 35 36 37 38 26 25
41 42 43 44 45 46 47 48 41 42 22 21 20 19 47 48
49 50 51 52 53 54 55 56 16 15 51 52 53 54 10 9
57 58 59 60 61 62 63 64 57 58 6 5 4 3 63 64
A 八阶自然方阵 B 八阶中心对称幻方
图 4 — 6 用穿心对调法制作八阶幻方示例
为什么要将上文中的 a 、 b 、 c 、 d 四个数总是都“搬家”或者都不“搬家”呢? 为了便于弄清这个问题,我们将图 4 — 6 的 A 图与 B 图在同一位置标记了四个“ 2 × 2 方块”(这 4 个方块,具有成左右对称、上下对称、中心对称的特点)。
我们先集中精力考察八阶自然方阵所标记的 4 个“ 2 × 2 方块”中,每一行、每一列诸数之和的情况。不难发现,从行方向来看, 其中第一行的 4 个数 10 、 11 、 14 、 15 之和 50 最小,第四行的 4 个数 50 、 51 、 54 、 55 之和 210 最大( 50+210=260=65 × 4 )。从列方向来看,其中第一列的 4 个数 10 、 18 、 42 、 50 之和 120 最小,第四列的 4 个数 15 、 23 、 47 、 55 之和 140 最大( 120+140 也等于 65 × 4 )。
在图 4 — 6B 幻方的左上区方块中,每一行有一个数“搬家”、另一个数不“搬家”,其总的对调结果是在所标记的四个方块中,各行诸数之和达到了“平衡”(“平衡”,是指出四数之和恰好等于幻方中最大数与最小数的 2 倍,例如图 4 — 6 对调后第一行的 4 个数 55 、 11 、 14 、 50 之和是 130 ,就恰好是 65 的 2 倍)。类似地,由于在左上区方块中每一列有一个数“搬家”、另一个数不“搬家”,其总的对调结果也使所标记的四个方块各列诸数之和也达到了“平衡”(例如第一列 4 个数 55 、 18 、 42 、 15 之和也是 130 )。这就是穿心对调法的制作原理。
1 2 62 61 60 59 7 8 1 2 62 61 60 59 7 8
56 10 11 53 52 14 15 49 56 10 54 12 13 51 15 49
48 47 19 20 21 22 42 41 17 47 19 45 44 22 42 24
25 39 38 28 29 35 34 32 40 39 27 28 29 30 34 33
33 31 30 36 37 27 26 40 32 31 35 36 37 38 26 25
24 23 43 44 45 46 18 17 41 23 43 21 20 46 18 48
16 50 51 13 12 54 55 9 16 50 14 52 53 11 55 9
57 58 6 5 4 3 63 64 57 58 6 5 4 3 63 64
A B
1 63 3 61 60 6 58 8 1. 63 . 3 61 60 6 58. 8.
9 10 54 53 52 51 15 16 56 .. 10. 54 12 13 51 15. 49.
48 47 19 20 21 22 42 41 17 47 19 45 44 22 42 24
40 26 38 28 29 35 31 33 40 26 38 28 29 35 31 33
32 34 30 36 37 27 39 25 32 34 30 36 37 27 39 25
24 23 43 44 45 46 18 17 41 23 43 21 20 46 18 48
49 50 14 13 12 11 55 56 16. 50. 14 52 53 11 55. 9.
57 7 59 5 4 62 2 64 57. 7. 59 5 4 62 2. 64.
C D
1 2 62 61 60 59 7 8 1 63 56 10 5 59 52 14
9 10. 54 . 53 52 51. 15. 16 62 4 11 53 58 8 15 49
48 47 . 19. 20 21 22. 42. 41 48 . 18. 25 39 44 22 29. 35.
40 39 27 28 29 30 34 33 19. 45 . 37 28 23 41 34. 32.
32 31 35 36 37 38 26 25 33. 31. 24 42 37 27 20. 46.
24 23. 43. 44 45 46. 18. 17 30. 36. 43 21 26 40 47. 17.
49 50. 14. 13 12 11. 55. 56 16 50 57 7 12 54 61 3
57 58 6 5 4 3 63 64 51 13 6 60 55 9 2 64
E F
图 4 — 7 据八阶自然方阵制作的八阶中心对称幻方
一般说来,在用穿心对调法制作的八阶幻方中,对于左上区的任何一个满足行方向与列方向都恰好有一个数参与对调的“ 2 × 2 ”小方块,将由它所确定的四个“ 2 × 2 ”方块依次拼合起来,都可以得到一个中心对称的四阶幻方(我们用标记圆点的方法在好几个八阶幻方中,标记了一组这样的小方块)。
据上文的分析,在用穿心对调法制作中心对称八阶幻方时,应该使它的左上区每一行、每一列都恰好有两个数“搬家”。图 4 — 7 是以八阶自然方阵为初始方阵、采用不同的对调方案制作的八阶中心对称幻方。在这些幻方中,左上区的每一行、每一列恰好都有两个数“搬家”。这些幻方左上区中八个“搬家”的数所在的方格,就组成了一个 八阶穿心对调指令 (这个指令指明了整个幻方中哪些方格的数应“搬家”,哪些方格的数不“搬家”)。
一般地,可得结论: 以八阶自然方阵为初始方阵,采用任何一种穿心对调指令作穿心对调,一定能制作成八阶中心对称幻方。