数独的7种解法.docx
《数独的7种解法.docx》由会员分享,可在线阅读,更多相关《数独的7种解法.docx(34页珍藏版)》请在冰豆网上搜索。
数独的7种解法
数独解法
七种解法:
前言
数独这个数字解谜游戏,完全不必要用到算术!
会用到的只是推理与逻辑。
刚开始接触
数独时,即使是只须用到”唯一解"技巧的简易级谜题,就已可让我们焦头烂额了,但是随着我们深陷数独的迷人世界之后,这类简易级的数独谜题必定在短时间内难再使我们获得征服的满足。
于是,当我们逐步深入、进阶到更难的游戏后,我们将会需要发展龈?
多的解谜技
巧。
虽然最好的技巧便是我们自己发现的窍门,这样我们很容易?
?
能记住它们,运用自如,
不需要别人来耳提面命。
但是如果完全不去观摩学习他人发展出来的技巧,而全靠自己摸索,
那将是一个非常坚苦的挑战,也不是正确的学习之道!
所以让我们一齐来探讨数独的解谜方法吧!
数独的解谜技巧,刚开始发展时,以直观式的唯一解及摒除法为主,对于初入门的玩家
来说,这也是一般人较容易理解、接受的方法,对于一般简易级或中级的数独谜题,如果能灵活运用此二法则,通常已游刃有余。
行或九宫格已出现过的数字已达8个,那么
1.唯一解法
当数独谜题中的某一个宫格因为所处的列、
<图1>(9,8)出现唯一解了
<图1>是最明显的唯一解出现时机,请看第
8行,由(1,8)〜(8,8)都已填入数字了,
8行中还没出现过的数字了!
只剩(9,8)还是空白,此时(9,8)中应填入的数字,当然就是第
请一个个数字核对一下,
哦!
是数字8还没出现过,所以
(9,8)中该填入的数字就是数字
2
9
:
5I
8
6
7
8
7
A
2
1
1
4
6'
8
7
1
2
6
6
4
孑
8
7
5|
£
I
7
5
9
3
4
<图2>(8,9)出现唯一解了
<图2>是另一个明显出现唯一解的情形,请看第8列,由(8,1)〜(8,8)都已填入数字
了,只剩(8,9)还是空白,此时(8,9)中应填入的数字,当然就是第8列中还没出现过的数字了!
请一个个数字核对一下,哦!
是数字9还没出现过,所以(8,9)中该填入的数字就是
3
4
1!
5
6
I2
5
6
9
7
7
1
2
6
9
了
8
2
2
1
6
9
5
7
9
5
8
7
3
4
1
数字9了。
<图3>亿5)出现唯一解了
<图3>是另一种明显出现唯一解的情形,请看下中九宫格,在这个九宫格中除了(7,5)
中还没出现过的数字了!
请一个个数字核对一下,
哦!
是数字1还没出现过,所以(7,5)
还是空白外,其他宫格都已填有数字了,所以(7,5)中应填入的数字,当然就是下中九宫格
中该填入的数字就是数字
4
9
3
5
7
2
6
3
5
4
2
8
6
9
1
7
6
9
3
5
4
2
8
9
5
1
8
6
4
<图4>一般情形下的唯一解
类似<图1>〜<图3>这种明显出现唯一解的情形,在一般情形之下及解题初期是不太可能出现的!
<图4>是一个最典型的简易级数独谜题,如果单纯观察某一个行、列或九宫格,没有一处是已出现8个数字的,难道如此就无解了吗?
非也!
非也!
在此图中,出现
唯一解的宫格其实有3处之多!
你能找出来吗?
没错,在一般情形之下及解题初期,唯一解的寻找必须综合所处的行、列及九宫格
三者,同时过滤筛选出已出现的数字才行!
如果漏掉其一,可能就无法找出唯一解的出现位
置了。
现在且不忙着填入数字,先来找找看<图4>中目前已出现的唯一解在哪儿吧:
第一个唯一解位置在(2,3):
(2,3)所处的第2列中已出现的数字是:
9、3、5、7。
所处的第3行中已出现的数字是:
4、2、6、8。
至于所处的上左九宫格中,已出现的数字是:
2、9、4。
所以综合而言,受其所处位置的行、列及九宫格影响,不得再使用并填入(2,3)
的数字计有:
2、3、4、5、6、7、&9。
能用来填入的数字确实只剩数字1这个唯一的解
了。
第二个唯一解位置在(8,7):
(8,7)所处的第8列中已出现的数字是:
1、2、8、6。
所处的第7行中已出现的数字是:
3、9、5、4。
至于所处的下右九宫格中,已出现的数字是:
4、6、5。
所以综合而言,受其所处位置的行、列及九宫格影响,不得再使用并填入(8,7)
的数字计有:
1、2、3、4、5、6、&9。
能用来填入的数字确实只剩数字7这个唯一的解
了。
第三个唯一解位置在(5,5):
(5,5)所处的第5列中已出现的数字是:
1、7。
所处的第
5行中已出现的数字是:
2、5。
至于所处的中央九宫格中,已出现的数字是:
3、6、8、9。
所以综合而言,受其所处位置的行、列及九宫格影响,不得再使用并填入(5,5)的数字计有:
1、2、3、5、6、7、8、9。
能用来填入的数字确实只剩数字4这个唯一的解了。
以上所谓的三个唯一解位置,是以<图4>现况未填入任何数字之前而言,如果开始填入
数字,出现唯一解的位置可能将随之增加。
例:
当(8,7)填入数字7之后,(7,7)将出现唯
一解1;如果再将数字1填入亿7),在(7,8)又将出现唯一解3;……如此不断循环下去,就可以将整个谜题解出了。
2.唯一候选数法
概说
依照候选数法概说一文中,候选数表的制作规则,我们可以知道:
可以填入某一个宫格
的数字,一定会列于该宫格的候选数中;不在候选数中的数字,就不能填入该宫格中。
所以如果在候选数表中发现某一个宫格的候选数仅有i个数字,那就是表示:
不必再考
虑了!
这个宫格就是只能填入这个数字啦!
如果填入别的数字,就会违反数独的填制规则的。
利用找出候选数表中,候选数仅有1个数字的宫格来,并填入该候选数”的方法就叫做
唯一候选数法(SinglesCandidature,soleCandidate)。
唯一候选数法示例
36yo
3bf
$却f
4rbQ
r
5
0‘丹■日
4
357
1
8
9
8
2
A7
3
9
2
6
3
5
£dd
4
7
5
1
8
47
9
2
4H
V
■>□
譯f
9
fr;-Jr斗Of
1
6
3
■-Tir|
LiC'l
2
4
6
可
14b
14H
7
Ao
5
4斗<3
1盒"
LJ
<图1>数独谜题的候选数表
<图1>是我们在候选数法概说一文中完成的候选数表,其中有好几个宫格的候选数都只有1个,所以可以利用唯一候选数法来进行填制。
先还不要填入数字,我们先来找找看,有哪些宫格有唯一候选数?
在(2,7)有唯一候选数7。
在(5,5)有唯一候选数5。
在(8,3)有唯一候选数3。
哇!
同时出现了3个唯一候选数啊!
那么,先填入哪一个会不会影响填制结果呢?
当然
不会了,只要你高兴,喜欢先填哪一个都没问题的。
好,就在这3个宫格中填入他们的唯一候选数吧,填制结果如<图2>:
Q
"-(id"Z"
xihif
9
5
|#4
rjifTi
4
23■吕
1
8
1
9
1
8
2
3
9
2
r
6
3
5
4
13
5
1
5
1
8
9
2
46
1
9
Z47
并U"TP"冲'4f
6
3
2
6
■1I±
■H
冯9
5
!
I
Q
<图2>
哇!
又有唯一候选数出现了呢!
没错,一般简易级的数独谜题,如果使用直观式的唯一
解法及摒除法来解题,即使是数独老手,也要花费相当的工夫才能完成;但是如果采用唯一
候选数法,从候选数表制作完成开始,唯一候选数将一个一个接连不断的出现,轻轻松松的就可以完成解题啦!
<图3>是<图1>的完成解
9
4
6
3
5
1
8
4
5
1
8
9
8
9
2
3
5
9
2
6
3
5
1
2
4
6
3
5
8
1
9
31
5
1
8
7
9
2
4
6
1
9
6
3
2
6
3
5
7
6
3
5
1
8
7
9
2
4
<图3>完成解
3.隐性三链数删减法
概说
遇到了高级、困难级的数独谜题,使得唯一候选数法和隐性唯一候选数法黔驴技穷的时
候,就是各种删减法上场的时机了。
在各种的删减法中,哪一个要先用是随个人之喜好的,
并无限制。
本页介绍的例子当然可用其他删减法完成解题,但还是要以隐性三链数删减法优
先?
?
!
<图1>
请看<图1>的第2列,数字1、7、8只出现在(2,1)、(2,7)和(2,8)这三个宫格的候选数中;这时隐性三链数删减法的条件已成立了!
这表示第2列的数字1、7和8将只能填到这三个宫格中,因为:
如果让别的数字填入这三个宫格之中后,这三个相异的数字能填
入的可能宫格就只剩下两个,而那是不可能的事!
所以若这三个宫格的候选数中还有其他数字,全部是多余无用的,它们已不可能再用来填入这些宫格中了,所以可以毫不考虑的把它
们删减掉。
于是(2,7)和(2,8)这两个宫格候选数中的6都可被安全的删减掉;其中(2,7)的候
选数少了数字6,将使得(8,7)出现行隐性唯一候选数6,于是可用隐性唯一候选数法来填
入下一个解了。
整理一下:
当某3个数字仅出现在某列的某三个宫格候选数中时,就可以把这三个宫格的候选数删减成
该3个数字。
同理,当某3个数字仅出现在某行的某三个宫格候选数中时,就可以把这三个宫格的候选数
删减成该3个数字。
当然,当某3个数字仅出现在某个九宫格的某三个宫格候选数中时,就可以把这三个宫格的
候选数删减成该3个数字。
利用找出某3个数字仅出现在某行、某列或某一个九宫格的某三个宫格候选数中的情形,
进而将这三个宫格的候选数删减成该3个数字”的方法就叫做隐性三链数删减法(Hidden
Triples)。
本法其实为隐性数对删除法的推广,而且还可以继续加以推广:
隐性四链数删减法就是:
找出某4个数字仅出现在某行、某列或某一个九宫格的某四个宫
格候选数中的情形,进而将这四个宫格的候选数删减成该4个数字”的方法。
隐性五链数删减法就是:
找出某5个数字仅出现在某行、某列或某一个九宫格的某五个宫
格候选数中的情形,进而将这五个宫格的候选数删减成该5个数字”的方法。
如果愿意的话,你确实是可以这样推广的,只是,实用上是否有其应用的价值或空间呢?
隐性三链数删减法示例
隐性三链数删减法一共有3种状况:
第一种发生在行、第二种是发生在列、第三种则发
生在九宫格。
<图1>就是发生在列的例子了,其他的情况举例如下:
7
14Gq
:
3
2
1-15
0
ar:
pa
吃5
8
7
4
9
3
6
25
g
3
6
CJ
7
140
5
1-4(5
8
9
127
3
3
pF
1fidH
8
8
167
O
2
=Si
4
J,(j
3
|专Jljtr|
2
11)z
'片
1~J'ci
8
9
3
4
6
^57g
457
6
9
3
1
<图2>
只出现在(4,
4、9以外的
9;(6,4)的候
<图2>是隐性三链数删减发生在行的例子:
图中第4行的数字2、4、9
4)、(5,4)及(6,4)这三个宫格的候选数中,所以可以将三个宫格候选数中2、
数字安全的删减掉,(4,4)的候选数删减成2、4;(5,4)的候选数删减成2、4、
选数删减成9;出现了唯一候选数啦!
1C3B
2
5
9
7
3
7
4
kitjtJ
56
9
"2"
1
4
127
5
6
5
136
7
46a
46
2
14b
u
8
y
1
Q
3
14b
2
3
7
148
5
9
130
F*
f1
07
5
7
4
电1
8
9
2
|*7£片f
5
3
9
^4€j
.|T
1
R
<图3>
<图3>是隐性三链数删减发生在九宫格的例子:
图中中央九宫格的数字2、5、9只出
现在(5,4)、(5,6)及(6,4)这三个宫格的候选数中,所以可以将三个宫格候选数中2、5、9
以外的数字安全的删减掉,(5,4)的候选数删减成2、5、9;(5,6)的候选数删减成2、5;(6,4)的候选数删减成9;出现了唯一候选数啦!
2
8
6
7
3
9
7
5
3
1
4
5
2
7
「4冇
3
1
9
8
134
i.j
S
7
6
2
6
1
jr>E_.■!
4
5
3
1
5
o
£3
27s
4
9
34
6
2萨
?
45
7
1
7
8
3
149
5
2
6
<图4>
像<图1>〜<图3>这样只经一次删减就出现下一个解的情况当然不错了,但有时可没
法这样顺心,<图4>就是一个例子。
下一个解将出现在(5,6)这个宫格,你能找出该填入
什么数字吗?
以目前所学到的方法,要解出下一个解,需要二个步骤:
先看中左九宫格吧!
由于只剩(5,1)〜(5,3)这个区块尚未填入数字,所以可用区块删减法将第5列其他区块候选数中的1、3、4全部删减掉,但实际上仅能删到(5,4)及(5,6)候选数
的数字4而已。
接下来请观察第6行!
由于数字1、4、9只出现在(2,6)、(8,6)及(9,6)这三个宫格的
候选数中[因为(5,6)的候选数在上一步骤中已被删减为5、8了],所以可用隐性三链数删
减将三个宫格候选数中1、4、9以外的数字安全的删减掉,(2,6)的候选数删减成1、4、9;
(9,6)的候选数没变;(8,6)的候选数则由2、4、5、8、9删减成4、9;由于5被删减掉了,使得(5,6)出现了行隐性唯一候选数5啦!
4.隐性数对删减法
概说
遇到了高级、困难级的数独谜题,使得唯一候选数法和隐性唯一候选数法黔驴技穷的时
候,就是各种删减法上场的时机了。
在各种的删减法中,哪一个要先用是随个人之喜好的,
并无限制。
本页介绍的当然就要以隐性数对删减法优先?
?
!
(5
"9'
■*
i|r
8
■1■•J'JL-騎-i
G
3
i347
2
6
9
pT'
5
6
5
3
78
9
5吕
13b
78
-Hi-
7
6
丁萨
4
8
7
9
ti
r*"Ticq
5
7
1已
3
4
2
134®曰吕i
1
39
134
2
57
131
?
3冲
y
1
8
X3.~Tif
34JF1
<图1>
请看<图1>的上右九宫格,数字8、9都只出现在(2,8)和(2,9)这两个宫格的候选数中;这时隐性数对删减法的条件已成立了!
这表示上右九宫格的数字8和9将只能填到这两个
宫格中,而且:
如果数字8将填入(2,8),那么(2,9)就一定要填入数字9;反之,如果数
字9将填入(2,8),那么(2,9)就一定要填入数字8;不论哪一个状况出现,(2,8)和(2,9)
这两个宫格的候选数中若还有其他数字,全部是多余无用的,因为这两个宫格若填入数字
&9以外的数字,那么上右九宫格的数字8或9就将无处可填了。
候选数的意义是可能
填入该宫格的数字,而这两个数字以外的数字已不可能再用来填入本宫格中了,所以可以毫不考虑的把它们删减掉。
当(2,8)和(2,9)这两个宫格的候选数都安全的删减成数字后,(2,5)出现了列隐性唯一候选数2,于是可用隐性唯一候选数法来填入下一个解了。
整理一下:
当某个数对仅出现在某个九宫格的某两个宫格候选数中时,就可以把这两个宫格的候选数删减成该数对。
同理,当某个数对仅出现在某列的某两个宫格候选数中时,就可以把这两个宫格的候选数删减成该数对。
当然,当某个数对仅出现在某行的某两个宫格候选数中时,就可以把这两个宫格的候选数删减成该数对。
利用找出某个数对仅出现在某行、某列或某一个九宫格的某两个宫格候选数中的情形,
进而将这两个宫格的候选数删减成该数对”的方法就叫做隐性数对删减法(HiddenPairs)。
当隐性数对删减法完成后,通常还可引发数对删减法;以<图1>为例,当(2,8)和(2,9)这两个宫格的候选数都安全的删减成数字8、9之后,还可利用数对删减法把(2,1)、(2,2)、(2,3)这三个c格候选数中的数字8删减掉。
隐性数对删减法示例
隐性数对删减法一共有3种状况:
第一种发生在行、第二种是发生在列、第三种则发生
在九宫格。
<图1>就是发生在九宫格的例子了,其他的情况举例如下:
9
5
34
1
6
2
8
7
&
4
8
9
7
3
2
5
4
■)9
8
3
©7
2
79
4
6
2
9
1
4
3
5
8
6
2
7
4
7
139
7S
4
9
6
汐
1
9
8
7
(3,2)及
4、6;
<图2>
<图2>是隐性数对删减发生在行的例子:
图中第2行的数对4、6只出现在
(9,2)这两个宫格的候选数中,所以可以将(3,2)及(9,2)的候选数安全的删减成数对
而经此一删,(3,3)宫格出现了列隐性唯一候选数1啦!
1
6
5
8
9
7
魁
9
6
2
8
5
7
4
6
3
2
5
ley
4
4
8
7
3
2
8
7
3
1
9
23
5
6
b
6
89
19
a
6
3
7
4
9
1
<图3>
<图3>是隐性数对删减发生在列的例子:
图中第
7列的数对4、7只出现在(7,1)及
亿8)这两个宫格的候选数中,所以可以将(7,1)及(7,8)的候选数安全的删减成数对4、7;
而经此一删,(8,1)宫格出现了行隐性唯一候选数2啦!
三链列删减法
概说
遇到了高级、困难级的数独谜题,使得唯一候选数法和隐性唯一候选数法黔驴技穷的时
候,就是各种删减法上场的时机了。
在各种的删减法中,哪一个要先用是随个人之喜好的,
并无限制。
本页介绍的例子当然可用其他删减法完成解题,且本删减法成立的条件和其他方
法相比稍嫌繁杂,但为了介绍,在进行解题时还是要以三链列删减法优先?
?
!
-
吕
2
;
吕
7
9
y
9
丨4£
?
4y
斗78
5
6
8
7
9
5
4
8
3
4
8
2
1
79
7
9
5
8
6
9
7
4
5
3
69
8
7
□
2
8
79
146
9
□
5
7
59
6
9
<图1>
1、5、8行的宫格候选数中;这
请看<图1>第1、4、6列的数字5,都只出现在第填到第1、4、6列了,因为:
第1列的数字5只出现在(1,1)及(1,8),所以数字5只能填到这两个宫格;
时三链列删减法的条件已成立了!
这表示第
1行、第5行及第8行的数字5将只能被
先假设第1列的数字5将被填到(1,1),第1行就不能再填数字5了,所以第4列的数
字5只好填到(4,5),第6列的数字5只好填到(6,8);
另外,假设第1列的数字5将被填到(1,8),第8行就不能再填数字5了,所以第6列
的数字5只好填到(6,1)或(6,5);
如果第6列的数字5填到(6,1),第4列的数字5就要填到(4,5);
如果第6列的数字5填到(6,5),第4列的数字5就要填到(4,1);
不论哪一种情况发生,第1、5、8行的数字5一定要填在第1、4、6列的交点,别的宫
格已不能再使用数字5来填入了,所以若其他宫格的候选数中还有数字5,全部是多余无
用的,可以毫不考虑的把它们删减掉。
于是(5,1)、(5,5)、(9,5)和(1,8)、(2,8)这五个宫格
候选数中的5都可被安全的删减掉;其中(9,5)