返回目录:游戏解答
578 126 439 932 548 617 146 793 285 354 269 871 829 471 356 617 385 942 785 632 194 463 917 528 291 854 763 148 753 692 623 849 175 795 126 834 931 465 287 476 218 953 582 397 416 869 532 741 254 971 368 317 684 529
【奇阶幻方】
一、Merzirac法生成奇阶幻方:
【1 居上行正中央,依次斜填切莫忘,上出框界往下写,右出框时左边放,重复便在下格填,出角重复一个样。】
即在第一行居中的方格内放1,依次向右上方填入2、3、4…,如果右上方已有数字或出角,则向下移一格继续填写。如下图用Merziral法生成的5阶幻方:
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
3阶幻方又叫九宫格,中国古代九宫格的填法口诀是:
【九宫之义,法以灵龟,二四为肩,六八为足,左三右七,戴九履一,五居中央。】
4 9 2
3 5 7
8 1 6
或,
2 9 4
7 5 3
6 1 8
二、loubere法生成奇阶幻方:
【1 居中央上方格,依次斜填切莫忘,上出框界往下写,右出框时左边放,重复上移两格填,出角重复一个样。】
即在居中的方格向上一格内放1,依次向右上方填入2、3、4…,如果右上方已有数字,则向上移两格继续填写。如下图用Louberel法生成的5阶幻方:
23 6 19 2 15
10 18 1 14 22
17 5 13 21 9
4 12 25 8 16
11 24 7 20 3
【偶阶幻方】
当n为偶数时,我们称幻方为偶阶幻方。当n可以被4整除时,我们称该偶阶幻方为双偶幻方,如4阶、8阶、12阶、16阶等;当n不可被4整除时,我们称该偶阶幻方为单偶幻方,如6阶、10阶、14阶等。
一、Spring法生成双偶幻方:
【顺序填数,以中心点对称互换数字。】
4阶幻方是最简单的双偶幻方,其方法:
第一步,顺序填数,先把1放在4阶幻方4个角的任意一个角格,按同一个方向按顺序依次填写其余数。如下所示:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
第二步,以中心点对称互换数字。(有两种对称交换的方法)
方法一:以中心点对称交换对角线上的数(即1-16、4-13、6-11、7-10互换),完成幻方,幻和值34。
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
方法二:以中心点对称交换非对角线上的数(即2-15、3-14、5-12、8-9互换),完成幻方,幻和值34。
1 15 14 4
12 6 7 9
8 10 11 5
13 3 2 16
二、用Strachey法生成单偶幻方:
【四分天下,化偶为奇,强弱互换,势均力敌】
第一步,将n阶单偶幻方表示为4m+2阶的奇幻方。将其等分为四分,成为如下图所示A、B、C、D四个2m+1阶奇数幻方。
A C
D B
如,6阶单偶幻方表示为(4*1+2)阶幻方,那么m就是1。A、B、C、D四个就是2m+1阶(3阶)奇数幻方。
A C
D B
用奇阶幻方的Merzirac法完成的A、B、C、D四个3阶幻方。A用1至9填写成3阶幻方;B用10至18填写成3阶幻方;C用19至27填写成3阶幻方;D用27至36填写成3阶幻方。
8 1 6 26 19 24
3 5 7 21 23 25
4 9 2 22 27 20
35 28 33 17 10 15
30 32 34 12 14 16
31 36 29 13 18 11
第二步,在A每行取m个小7a686964616fe59b9ee7ad94339格(中心格及一侧对角线格为必换格,其余m-1格只要不是另一侧对角线格即可),简单地说,就是说在A中间一行取包括中心格在内的m个小格,其他行左侧边缘取m个小格,将其与D相应方格内交换;B与C在最右侧取m-1列相互交换。
6阶幻方就是4*1+2,那么m就是1。在A中间一行取中心格1个小格,其他行左侧边缘取1个小格,将其与D相应方格内交换;即可完成6阶幻方。
35 1 6 26 19 24
3 32 7 21 23 25
31 9 2 22 27 20
8 28 33 17 10 15
30 5 34 12 14 16
4 36 29 13 18 11
每一行,每一列,对角线的和值(称为幻和值)为111。
单偶幻方的方法比较麻烦,详情请参阅我的回答:
http://zhidao.baidu.com/question/309617635.html?oldq=1
http://zhidao.baidu.com/question/374489504.html?oldq=1
http://zhidao.baidu.com/question/418933531.html?oldq=1
问题补充:
9阶幻方
1、Merzirac法生成的9阶幻方:
2、loubere法生成的9阶幻方:
3、跳马法生成的9阶幻方:
若把1放在(1,5)、(4,8)、(7,2)红色格,向左走1步,下走2步以跳马步,如果落步格已有数字,向下移一格继续填写,完成幻方。
若把1放在其余格,用此法填写,则两条对角线数字和不等于369。
4、集团方阵法生成的9阶幻方:
摒除法:用数字去找单元内唯一可填空格,称为摒除法,数字可填唯一空格称为摒余解(隐性唯一解)。
根据不同的作用范围,摒余解可分为下述三种:
1.1 数字可填唯一空格在「宫」单元称为宫摒余解(Hidden Single in Box),这种解法称宫摒除法。
1.2 数字可填唯一空格在「行」单元称为行摒余解(Hidden Single in Row),这种解法称行摒除法。
1.3 数字可填唯一空格在「列」单元称为列摒余解(Hidden Single in Column),这种解法称列摒除法。
1.4 行摒余解和列摒余解合称行列摒余解(Hidden Single in Line)。
1.5 得到行列摒余解的方法称为行列摒除法。
余数法
Peer等位群格位[1]
余数法:用格位去找唯一可填数字,称为余数法,格位唯一可填数字称为唯余解(Naked Single)。
余数法是删减等位群格位(Peer)已出现的数字的方法,每一格位的等位群格位有 20 个,如右图所示。
变九宫格为四种形式:
一、把原九九八十一宫,横竖各去掉三宫,变为六六三十六宫e79fa5e98193e4b893e5b19e366。
二、把三十六宫的左、右两行十二宫去掉,成二十四宫,适宜书写长方体字;或把上、下两行十二宫去掉,亦成二十四宫,宜于习练扁平体字。
三、将三十六宫形变成双回字形,用以写方体字。
四、将三十六宫形变成田字形,并在上二宫从同一顶点各画条对角线,形成一个人字,用以书写盖似人字形的字。这样似乎还不简便,通过长期实践,后人又改进了两种简明实用的习字格:一为田字格,一为米字格。田字格是在方框中画一“十”字,分成四格,按此格习字,便于安排字的间架结构、重心和笔画的斜正疏密。米字格是在田字格的基础上再画两条对角线,形如米字,此种方格类同蛛网,习字时便于判断全字和各单笔的位置。
数独解法全是由规则衍生出来的,基本解法分为两类思路,一类为排除法,一类为唯一法。更复杂的解法,最终也会归结到这两大类中。下边以图示简单介绍几种解法,只要你花几分钟看一遍,马上就可以开始做数独了。数独直观法解题技巧主要有:唯一解法、基础摒除法、区块摒除法、唯余解法、矩形摒除法、单元摒除法,余数测试法等。
基础摒除法
基础摒除法就是利用1 ~ 9 的数字在每一行、每一列、每一个九宫格都只能e5a48de588b6e799bee5baa6e997aee7ad94331出现一次的规则进行解题的方法。基础摒除法可以分为行摒除、列摒除、九宫格摒除。
实际寻找解的过程为:
寻找九宫格摒除解:找到了某数在某一个九宫格可填入的位置只余一个的情形;意即找到了 该数在该九宫格中的填入位置。
寻找列摒除解:找到了某数在某列可填入的位置只余一个的情形;意即找到了该数在该列中的填入位置。
寻找行摒除解:找到了某数在某行可填入的位置只余一个的情形;意即找到了该数在该行中的填入位置。
唯一解法
当某行已填数字的宫格达到8个,那么该行剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为行唯一解.
当某列已填数字的宫格达到8个,那么该列剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为列唯一解.
当某九宫格已填数字的宫格达到8个,那么该九宫格剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为九宫格唯一解.
唯余解法
唯余解法就是某宫格可以添入的数已经排除了8个,那么这个宫格的数字就只能添入那个没有出现的数字.
区块摒除法
区块摒除法是基础摒除法的提升方法,是直观法中使用频率最高的方法之一.
余数测试法
所谓余数测试法就是在某行或列,九宫格所填数字比较多,剩余2个或3个时,在剩余宫格添入值进行测试的解题方法.
隐性唯一候选数法
当某个数字在某一列各宫格的候选数中只出现一次时,那么这个数字就是这一列的唯一候选数了.这个宫格的值就可以确定为该数字. 这时因为,按照数独游戏的规则要求每一列都应该包含数字1~9,而其它宫格的候选数都不含有该数,则该数不可能出现在其它的宫格,那么就只能出现在这个宫格了. 对于唯一候选数出现行,九宫格的情况,处理方法完全相同。
三链数删减法
找出某一列、某一行或某一个九宫格中的某三个宫格候选数中,相异的数字不超过3个的情形, 进而将这3个数字自其它宫格的候选数中删减掉」的方法就叫做三链数删减法。
隐性三链数删减法
在某行,存在三个数字出现在相同的宫格内,在本行的其它宫格均不包含这三个数字,我们称这个数对是隐形三链数.那么这三个宫格的候选数中的其它数字都可以排除.
当隐形三链数出现在列,九宫格,处理方法是完全相同的.
矩形顶点删减法
矩形顶点删减法和直观法讲到的矩形摒除法分析方法是一样的。矩形顶点删减法在识别时比较不容易找到,所以最好先使用其它的方法。
三链列删减法
三链列删减法是矩形顶点删减法的扩展,如果不清除矩形顶点删减法,可以参考矩形顶点删减法,以便于更容易理解本节内容。 利用“找出某个数字在某三列仅出现在相同三行的情形,进而将该数字自这三行其他宫格候选数中删减掉”; 或“找出某个数字在某三行仅出现在相同三列的情形,进而将该数字自这三列其他宫格候选数中删减掉”的方法 就叫做三链列删减法。
关键数删减法
在进入到解题后期,利用前面讲到的唯一候选数法、隐性唯一候选数法、 区块删减法、数对删减法、隐性数对删减法、 三链数删减法、隐性三链数删减法、矩形顶点删减法、 三链列删减法都无法有进展的时候,可以考虑使用关键数删减法。关键数删减法就是在后期找到一个数,这个数在行(或列,九宫格)仅出现两次的数字。我们假定这个数在其中一个宫格类,继续求解,如果发生错误,则确定我们的假设错误。如果继续求解仍然出现困难,不妨假设这个数在另外一个宫格,看能不能得到错误。这就是关键数删减法.