三阶幻方

Posted arrokoth

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三阶幻方相关的知识,希望对你有一定的参考价值。

嘛,这应该是最简单的一种幻方吧。。。开个头咯。

简单介绍一下三阶幻方,大概就是向3x3的格子里面填写1~9的数字,使得每行、每列还有对角线的和相等。

然后求一下幻和:s = (1 + 2 + 3 + ... + 9) / 3 = 15 。这里就是数字的和除以行数。(用公式也行 n x  ( n2 + 1 ) / 2)

然后我们给每个格子编上号。

 x1   x2  x3  如果以 x5 为中心,行、列、对角线求和:

 x4  x5  x6                    (x1 + x5 + x9) + (x7 + x5 + x3) + (x4 + x5 + x6) + (x2 + x5 + x8) = 4 x 15 = 60

 x7  x8  x9  整理一下的话: (x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9) + 3 * x5 = 60  -->  3 * x5 = 60 - 45 = 15  -->  x5 = 5

于是我们就得到中心数字了 。下面就简单了。分组尝试填就行了。

你可以莽填(雾),也可以观察观察。

通过观察:

  x1   x2  x3  标红的位置填入数字的影响相同,标绿数字的影响相同。这点注意的话,就不会重复填了。

  x4   5   x6  然后就是填的时候不要将两个和小的数填一块儿,一定不对哈哈哈。

  x7  x8  x9  或者你知道口诀嘛,奇偶四角为偶数。

答案: 

 4    9    2

 3    5    7

 8    1    6 

 

以上是关于三阶幻方的主要内容,如果未能解决你的问题,请参考以下文章

Hihocoder1662 : 查找三阶幻方([Offer收割]编程练习赛40)(暴力)

LQ0127 九宫幻方枚举

蓝桥杯基础题2017年省赛—九宫幻方

反幻方

hihoCoder[Offer收割]编程练习赛1题目解析

Java--算法特训暴力破解和实用性优先(题目三)