数独的直观式解题技巧.docx
《数独的直观式解题技巧.docx》由会员分享,可在线阅读,更多相关《数独的直观式解题技巧.docx(18页珍藏版)》请在冰豆网上搜索。
数独的直观式解题技巧
数独的直观式解题技巧
一、唯一解法
前言 直观法的根本是基础摒除法,唯一解法其实只可算是基础摒除法的特例,只因其成立条件十分特殊明确,可以几乎不花脑筋就填出解来,所以特别独立为一法,但有些人是完全不加理会的。
唯一解详说 当数独谜题中的某一个宫格因为所处的列、行或九宫格已填入数字的宫格达到8个时,那么这个宫格所能填入的数字,就只剩下那个还没出现过的数字了。
当某列已填入数字的宫格达到8个时,所剩宫格唯一能填入的数字就叫做列唯一解;当某行已填入数字的宫格达到8个时,所剩宫格唯一能填入的数字就叫做行唯一解;当某个九宫格已填入数字的宫格达到8个时,所剩宫格唯一能填入的数字就叫做九宫格唯一解。
<图1>(5,9)出现列唯一解6了
<图1>是出现列唯一解的例子,请看第5列,由(5,1)~(5,8)都已填入数字了,只剩(5,9)还是空白,此时(5,9)中应填入的数字,当然就是第5列中还没出现过的数字了!
请一个个数字核对一下,哦!
是数字6还没出现过,所以(5,9)中该填入的数字就是数字6了,这时我们说:
(5,9)有列唯一解6。
<图2>(7,1)出现行唯一解9了
<图2>是出现行唯一解的例子,请看第1行,除了宫格(7,1)外都已填入数字了,此时(7,1)中应填入的数字,当然就是第1行中还没出现过的数字9了!
这时我们说:
(7,1)有行唯一解9。
<图3>(7,2)出现九宫格唯一解3了
<图3>是出现九宫格唯一解的例子,请看下左九宫格,除了宫格(7,2)外都已填入数字了,此时(7,2)中应填入的数字,当然就是下左九宫格中还没出现过的数字3了!
这时我们说:
(7,2)有九宫格唯一解3。
仔细想想:
以上的列唯一解其实也可看成是列摒除解、行唯一解也可看成是行摒除解、九宫格唯一解也可看成是九宫格摒除解,不是吗?
不过9个宫格已填了8个,这样的情况太特殊、太容易辨认了,所以独立出来也无可厚非啦!
结语 使用直观法时,大部分的时间应该都在使用基础摒除法,尤其是刚开始解题时,唯一解法应该不太会有应用的机会,但随着填入的数字越来越多,唯一解法上场的机会就越来越高了。
虽然玩家也可以完全以摒除法系统性的寻找题解,不过这么特殊、容易辨认的情况出现了,而不去理会,也未免太可惜啦!
二、唯余解法
前言 唯余解法的原理十分简单,但是在实际的解题中,非常不容易辨认。
由于唯余解非常不容易辨认,所以一般的报章杂志及较大众化的数独网站,通常会将需要用到唯余解法的数独谜题归入较高的级别。
但另一种以候选数法为分级根据的网站,则会把这类的谜题放到较低的级别中。
唯余解详说 当数独谜题中的某一个宫格,因为所处的列、行及九宫格中,合计已出现过不同的8个数字,使得这个宫格所能填入的数字,就只剩下那个还没出现过的数字时,我们称这个宫格有唯余解。
<图1>(8,6)出现唯余解了
<图1>是出现唯余解的例子,请看(8,6)在的第8列,共出现了2、8、1、6、5、3六个数字;接下来再看(8,6)所在的第6行,共有2、4、9三个数字;而(8,6)所在的下中九宫格,还包含了1、6、2三个数字;所以(8,6)所处的列、行及九宫格中,合计已出现过1、2、3、4、5、6、8、9共8个不同的数字;依照数独的填制规则,同一列、同一行及同一个九宫格中,每一个数字都只能出现一次,所以(8,6)就只能填入尚未出现过的数字7了;这时我们说:
(8,6)有唯余解7。
<图2>
如果你学过候选数法,应该可以看出来:
直观法中的唯一解法及唯余解法,在候选数法中就是最简易的唯一候选数法,但在直观法中,这两种方法是有着很大不同的。
唯一解法的判定一样十分简单,某行、某列或某个九宫格已被填了8格时,就是唯一解法;但唯余解法却十分难以辨认,<图2>中,使用基础摒除法已找不到解了,只好找寻唯余解,而谜题中共有两个唯余解,请你找找看,看是否可以找到!
当你把鼠标移到图块上时,会显示出其中的一个:
在(1,6)有唯余解3,另一个唯余解5则出现在在(3,1)。
不容易找到吧!
所以一般的报章杂志及较大众化的数独网站,通常会将需要用到唯余解法的数独谜题归入较高的级别。
结语 使用直观法时,大部分的时间应该都在使用基础摒除法,但有些较困难的数独题目,不时会出现以基础摒除法将找不到解的情况,这时就是唯余解法上场应用的机会了,不过随着填入的数字越来越多,需要唯余解法上场的机会就越来越低了。
虽然在候选数法玩家的眼中,需要应用越多次唯余解法的数独题目,就和拿着大关刀切菜一般简单。
但需要应用越多次唯余解法的数独题目,在直观法玩家的眼中真是恶魔啊!
三、直观式解题法解简易级范例
概说 对大部分的数独初学者来说,什么叫做不用猜测,完全以逻辑方法得出解答,是最不容易理解且做到的事。
虽然我们已说明了直观式解题所常用的技巧,但要如何应用,可能仍有人不太明了!
运用网页为媒介的最大优势就是不受篇幅的限制,真的是想要怎么表达,就可以这么表达!
既然有全题解题示范的需求,尤怪就示范给大家看吧,不过,这只是示范哦,玩家的解题程序若和尤怪不同,并不表示任何意义!
只要能解题,采用何种方法其实并不是重点,只要求不可猜测就好!
解题实例
<图1>原始谜题
尤怪拿到数独谜题后,比较一丝不苟,均循序一一检视,以免产生遗漏,本题亦同。
先由1开始检查,发现没有可确认的填入点之后,开始检视数字2,因为第3列及第7、8行都已有了数字2,所以上右九宫格的数字2只能填入(1,9):
发现(1,9)可填入2
接着再检视数字2、3都没发现填入点,检查数字4时,因为第4、5列及第2行都已有了数字4,所以中左九宫格的数字4只能填入(4,1):
发现(4,1)可填入4
检查数字4没发现填入点后,检查数字5时,因为第1、7行都已有了数字5,以及上中九宫格的数字5使得(2,4)及(2,6)宫格不得再填入5,所以第2列的数字5只能填入(2,2);同时因(1,6)及(8,7)这两个宫格的摒除作用,使得上右九宫格的数字5只能填入(3,9):
发现(2,2)、(3,9)可填入5
发现(4,8)、(5,4)可填入5
开始检查数字6:
发现(4,7)、(9,9)可填入6
接下来可相继发现数字6应填在(6,3)、(1,1)、(3,6)、(7,4)
开始检查数字7:
发现(5,7)、(6,5)可填入7
接下来可相继发现数字7应填在(1,4)、(3,2)、(9,1)、(8,8)
开始检查数字8,虽然只出现3个8,但因空白宫格的减少,一下子就可发现好多处解:
在第5列只能填在(5,1)、在第8列只能填在(8,4)、在中右九宫格只能填在(6,8)、在下左九宫格只能填在(9,2):
发现(5,1)、(8,4)、(6,8)、(9,2)可填入8
检查数字9时,使用摒除法并无法找到填入点。
(因为唯一解法要由数字1到9逐一检视是否出现,使用上不像摒除法那么直观而简易,所以本例中虽然使用唯一解法可找到(2,1)、(4,2)有唯一解9,但因尤怪只在摒除法找不到解时才使用唯一解法,所以找不到填入点)所以又重由数字1开始检视,或许有人会问:
「刚才不是已检查过了吗?
」没错!
但在那之后已填入了好多数字,所以盘面状况已大不相同,检查结果也将不同了。
果然,我们可发现数字1在第1行只能填在(7,1)、在第4列只能填在(4,4):
发现(7,1)、(4,4)可填入1
接下来可相继发现数字1应填在(2,6)、(5,3)、(9,7)、(6,9)
检查数字2:
可相继发现数字2应填在(4,5)、(2,4)、(8,6)、(7,3)
检查数字3:
可相继发现数字3应填在(1,3)、(2,7)、(7,8)、(6,2)、(5,6)、(9,5)
检查数字4:
可相继发现数字4应填在(3,3)、(1,7)、(8,9)、(9,6)
......。
剩下的部份应不必再示范了吧!
就留作练习了。
四、直观式解题法解中级题范例
概说 对大部分的数独初学者来说,什么叫做不用猜测,完全以逻辑方法得出解答,是最不容易理解且做到的事。
虽然我们已说明了直观式解题所常用的技巧,但要如何应用,可能仍有人不太明了!
运用网页为媒介的最大优势就是不受篇幅的限制,真的是想要怎么表达,就可以这么表达!
既然有全题解题示范的需求,尤怪就示范给大家看吧,不过,这只是示范哦,玩家的解题程序若和尤怪不同,并不表示任何意义!
只要能解题,采用何种方法其实并不是重点,只要求不可猜测就好!
解题实例
<图1>原始谜题
尤怪拿到数独谜题后,比较一丝不苟,均由数字1起循序一一检视,以免产生遗漏,本题亦同。
先由1开始检查,发现上中九宫格的数字1只能填入(3,6):
发现(3,6)可填入1
接着检视数字2:
发现(3,8)、(4,6)可填入2
检视数字3时没发现填入点,检视数字4时,发现需用到高级摒除法:
因为第2行及第9列的数字4,使得下左九宫格的数字4只能填在第8列,再加上第6行及第9列的数字4,使得下中九宫格的数字4只能填到(7,4)了:
发现(7,4)可填入4
接着的下一个解还是要使用高级摒除法:
因为第9行的数字4使得中右九宫格的数字4只能填在第5列,再加上第4列、第4及第6行的也已有4了,所以中央九宫格的数字4就只能填到(6,5)了:
发现(6,5)可填入4
接着再检视数字4、5时都没发现填入点了,开始检查数字6:
发现(9,4)、(4,1)可填入6
发现(2,2)可填入6
开始检查数字7:
发现(5,5)可填入7
开始检查数字8:
发现(7,9)、(6,1)可填入8
发现(9,2)可填入8
开始检查数字9:
发现(6,4)可填入9
回头检查数字1,因为所用技巧只是一般的摒除,就不一一显示摒除情形了:
可相继发现数字1应填在(4,5)、(6,9)、(7,7)
检视数字2时没发现填入点,检查数字3:
可相继发现数字3应填在(4,4)、(2,1)、(7,2)
检查数字4时没发现填入点,检查数字5,发现了一个好有趣的摒除,居然不靠任何的数字5也能使用摒除法,且找到下一个解;因为中左九宫格的数字5只能填在第5列,所以中右九宫格的数字5就只能填在(4,9)了:
发现(4,9)、(6,6)可填入5
检查数字6时没发现填入点,检查数字7:
可相继发现数字7应填在(7,8)、(9,6)、(8,1)、(3,2)、(1,4)、(2,9)
可相继发现数字9应填在(1,9)、(2,5)
回头检查到数字3时也很有意思,因为下中九宫格的数字3一定要填在第5行,再加上第4行已有3了,所以上中九宫格的数字3只能填在(1,6):
发现(1,6)可填入3
......。
剩下的部份应不必再示范了吧!
就留作练习了。
五、直观式解题法解高级题范例
概说 对大部分的数独初学者来说,什么叫做不用猜测,完全以逻辑方法得出解答,是最不容易理解且做到的事。
虽然我们已说明了直观式解题所常用的技巧,但要如何应用,可能仍有人不太明了!
运用网页为媒介的最大优势就是不受篇幅的限制,真的是想要怎么表达,就可以这么表达!
既然有全题解题示范的需求,尤怪就示范给大家看吧,不过,这只是示范哦,玩家的解题程序若和尤怪不同,并不表示任何意义!
只要能解题,采用何种方法其实并不是重点,只要求不可猜测就好!
解题实例
<图1>原始谜题
基本上,不同的单位对数独难度的判定有不同的标准,某处列为简易题的,在另一处可能被列为中级题,甚至高级题;所以大家对难度的标示其实不必太执着。
为了让大家比较一下,这个范例的高级题来自「PuzzleJapan」Let'sPlaySudoku的Sampleproblem第9题,作者为KANEOKARyo,等级为Hard。
沿续以往的风格,拿到数独谜题后,均由数字1起循序一一检视,以免产生遗漏,另外,既然是高级题的示范,且已做了两个数独题的范例了,太多的图文其实是不必要而无帮助的,所以本例中以一般摒除法求得的解就不再以图示展示,仅直接列出解题的顺序;为了加快解题的速度,也不再只用摒除法,只要某一行、列或九宫格只剩下两个空白宫格时,就先用唯一解法找找看,看看是否找得到唯一解。
发现(9,1)有摒除解3、(9,9)有摒除解5
检视到数字6时,因为第1行及第6列已有6了,中左九宫格的数字6就只能填在第3行,然后再加上第3列的数字6,上左九宫格中的数字6就只能填在(2,2)了:
发现(2,2)有摒除解6、(5,7)有摒除解7
检视到数字7时,因为第2行及第9列已有7了,下左九宫格的数字7就只能填在第3行,然后再加上第5、6列的数字7,中左九宫格中的数字7就只能填在(4,1)了:
发现(4,1)有摒除解7
检视到数字1时,使用类似的技巧可发现下右九宫格中的数字1就只能填在(7,9)了:
发现(7,9)有摒除解1
发现(7,2)、(4,8)有摒除解2
在这里?
s到了一次瓶颈,使用摒除法找不到下一个解了;只好在已填数字较多处找唯一解:
发现(5,1)有唯一解8、(1,3)有摒除解8
在这里又?
s到了一次瓶颈,使用摒除法又找不到下一个解了;一样只好在已填数字较多处找唯一解,找到一解之后,利用摒除法又可继续找到下一个解:
发现(6,1)有唯一解1、(1,4)有摒除解5、发现(1,6)、(9,4)有摒除解6、(8,4)、(9,3)、(3,2)、(2,7)有摒除解1
检视到数字2时,恰巧出现一个高级摒除法的技巧,虽然在本题即使不用也一样可以得到下一个解,但既然?
s到了,机会难得,就介绍一下吧:
由于第2、3行的数字2,使得上左九宫格的数字2只能填在(1,1)及(3,1);由于第8、9行的数字2,使得上右九宫格的数字2只能填在(1,7)及(3,7);在这样的状况下,如果上左九宫格的数字2填在(1,1),则上右九宫格的数字2就一定要填在(3,7);如果上左九宫格的数字2填在(3,1),则上右九宫格的数字2就一定要填在(1,7);不论是哪一种状况发生,第1、3列的数字2都会被填入,所以其它宫格不能再填入数字2,再加上第5行的2,使得上中九宫格的数字2只能填在(2,6):
注:
这其实就是候选数法中的矩形顶点删减法。
发现(2,6)有摒除解2
发现(5,4)有摒除解2、(2,5)有摒除解3、
(2,3)、(6,2)、(3,8)、(5,5)有摒除解5、
(4,5)、(5,3)有摒除解2、(4,3)有摒除解9、(3,7)有摒除解8
在检视数字8时,又要使用较曲折的摒除技巧才能找到下一个解:
发现(4,9)有摒除解8