数独的直观式解题技巧文档格式.docx
《数独的直观式解题技巧文档格式.docx》由会员分享,可在线阅读,更多相关《数独的直观式解题技巧文档格式.docx(237页珍藏版)》请在冰点文库上搜索。
![数独的直观式解题技巧文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-5/7/bfd698e2-6ed3-4587-9913-76f92bd7e37f/bfd698e2-6ed3-4587-9913-76f92bd7e37f1.gif)
靈活運用本站所介紹的直觀填製法,確實可以不必使用橡皮擦。
2.從接到數獨謎題的那一刻起就可以立即開始解題。
3.初學者或沒有電腦輔助時的首要解題方法。
4.相對而言,能解出的謎題較簡單。
直觀法的主要的技巧:
5.基礎摒除法。
6.唯一解法。
7.區塊摒除法。
8.唯餘解法。
9.單元摒除法。
10.矩形摒除法。
11.餘數測試法。
基礎摒除法
對第一次接觸數獨遊戲,接受了1~9的數字在每一行、每一列、每一個九宮格都只能出現一次的規則後,開始要解題的玩家來說,基礎摒除法絕對是他第一個想到及使用的方法,十分的自然、也十分的簡易。
如果能夠細心、系統化的運用基礎摒除法,一般報章雜誌或較大眾化的數獨網站上的數獨謎題幾乎全部可解出來。
只不過大部分的玩家都不知如何系統化的運用基礎摒除法罷了!
基礎摒除法雖然簡單,但在實際應用時,仍然可分成三個部分:
1.行摒除:
因為同一行不能有兩個相同的數字,所以當某個數字已在某行中出現時,該行再填入該數字的可能性就應該被摒除掉。
2.列摒除:
因為同一列不能有兩個相同的數字,所以當某個數字已在某列中出現時,該列再填入該數字的可能性就應該被摒除掉。
3.九宮格摒除:
因為同一個九宮格不能有兩個相同的數字,所以當某個數字已在某個九宮格中出現時,該九宮格再填入該數字的可能性就應該被摒除掉。
在運用基礎摒除法來尋找解的過程中,其實也可分為三個部分:
4.尋找九宮格摒除解:
找到了某數在某一個九宮格可填入的位置只餘一個的情形;
意即找到了該數在該九宮格中的填入位置。
5.尋找列摒除解:
找到了某數在某列可填入的位置只餘一個的情形;
意即找到了該數在該列中的填入位置。
6.尋找行摒除解:
找到了某數在某行可填入的位置只餘一個的情形;
意即找到了該數在該行中的填入位置。
不過不要說是初入門者,即使是很多未接受過本訊息者,也常常會遺漏了行、列摒除解的尋找。
對一些粗心的玩家來說,即使是九宮格摒除解也常被跳著做,所以解起題來就會感到不是十分順手。
九宮格摒除解的尋找
九宮格摒除解的系統尋找是由數字1開始一直到數字9,週而復始,直到解完全題或無解時為止;
每個數字又需從上左九宮格起,直到下右九宮格,週而復始,同樣要不斷重複到解完全題或無解時為止。
<
圖1>
以<
圖1>
的解題為例:
先從數字1開始,並由上左九宮格起尋找九宮格摒除解,會影響上左九宮格的數字,一定存在第1列~第3列以及第1行~第3行如<
圖2>
的綠色區域。
圖2>
本區域已存在的數字1共有兩個,它們分別存在(2,9)及(5,1);
其中(2,9)數字1的列摒除,將摒除第2列其它宮格再填入數字1的可能,因為依照規則每一列只能有一個數字1,如果再在本列填入數字1,那麼本列就會有兩個1了。
同理,(5,1)數字1的行摒除,將摒除第1行其它宮格再填入數字1的可能,其示意圖如<
圖3>
。
對上左九宮格的摒除僅能到此地步,我們可以很容易的發現:
本九宮中還有3個宮格不在被摒除的區域中,意即:
這3個宮格都仍有可能填入數字1,依不可猜測的原則,本九宮格暫時不予處理。
接下來我們要嘗試在上中九宮格尋找是否有九宮格摒除解1:
會影響上中九宮格的數字,一定存在第1列~第3列以及第4行~第6行。
本區域已存在的數字1共有3個,它們分別存在(2,9)、(4,6)及(9,5),其摒除的範圍示意圖如<
圖4>
同樣的,我們可以很容易的發現:
本九宮中還有2個宮格不在被摒除的區域中,意即:
這2個宮格都仍有可能填入數字1,依不可猜測的原則,本九宮格一樣暫時不予處理。
接下來的上右、中左、中央九宮格都已有數字1了,所以不必再找數字1該填入的宮格。
所以現在需要處理的九宮格輪到了中右九宮格,依上法對此九宮格進行的摒除示意圖如<
圖5>
:
我們可以很容易的發現:
本九宮中只剩宮格(6,8)不在被摒除的區域中,意即:
在這個九宮格中只剩這個宮格仍有可能填入數字1,所以本九宮格的數字1就只能填到這裡了;
這時我們稱:
在(6,8)有九宮格摒除解1。
在一般的解題技巧教導中(也包含尤怪之家先前的作品),把前面的徒勞尋找都省略不提,直接就告訴玩家:
在(6,8)有九宮格摒除解1。
當然這是為了篇幅考量,把全部過程都寫出來將多出很多篇幅,但也將造成初學者的挫折感,他們會以為電腦或已入門者的功力實在太高強了,一眼就能看出解在哪裡!
自己卻很笨,找了老半天才找到一個解;
其實速度可能有差,方法及過程則是一樣的。
重複前面的方法,我們可以發現數字1、2都沒法找到九宮格摒除解了。
輪到數字3時,也要一直到下左九宮格才能找到(8,2)有九宮格摒除解3如<
圖6>
、然後在(9,9)有九宮格摒除解3如<
圖7>
在這裡要提醒初學者注意的是:
雖然我們從上左九宮格開始,到現在的下右九宮格,已將所有的九宮格都找過一遍了!
但因為中間曾經在某些宮格填入我們找到的數字解,所以一定要再從頭找一遍,否則會讓我們遺漏掉一些可以馬上找到的解。
例如我們又可找到在(6,1)有九宮格摒除解3如<
圖8>
;
然後在(5,6)也有九宮格摒除解3如<
圖9>
同樣的,因為在本循環又曾找到一些解,所以還要再找一次,確定已沒法找到九宮格摒除解3了,才能換成數字4繼續尋找下去。
在以上的過程中,為了標示已存在的數字對九宮格的摒除狀況,特別用圖示的方式呈現,有些玩家就發出了這樣的疑問:
在解報章雜誌上的數獨題目時,是否要用鉛筆在謎題上畫線,以找出摒除解呢?
其實不必啦!
玩家們只要稍微練習一下,至多只要空手在謎題上比劃比劃,就可以看出哪些宮格已被摒除,進而找出摒除解的。
行、列摒除解的尋找
和九宮格摒除解的尋找一樣,列摒除解的系統尋找是由數字1開始一直到數字9,週而復始,直到解完全題或無解時為止;
每個數字又需從第1列起,直到第9列止,週而復始,同樣要不斷重複到解完全題或無解時為止。
同理,行摒除解的系統尋找也是一樣的作法。
大部分的人都會十分習慣應用九宮格摒除解的尋找,而完全忽略了行、列摒除解的尋找;
對某些題目而言或許可行,但對某些題目而言,不運用此二法可是行不通的哦!
大家已有九宮格摒除解的尋找經驗了,所以尤怪就不再把無效的找尋過程秀出來,而直接展示成功的例子啦,不過直接秀出來又太沒意思了,就當做是做個小小的測驗吧,以下的範例都先展示目前題型,並告訴大家在某個宮格有何解,請大家找找看,如果找到了,要核對摒除示意圖,或者找不到,要參考摒除示意圖,請將滑鼠游標移到圖塊上就可顯現啦!
在<
圖10>
中,(5,5)有一個摒除解7,你可以看出來嗎?
圖10>
圖11>
中,(9,1)有一個摒除解3,你可以看出來嗎?
圖11>
圖12>
中,(7,1)有一個摒除解1,你可以看出來嗎?
圖12>
圖13>
中,(6,4)有一個摒除解6,你可以看出來嗎?
圖13>
圖14>
中,(1,3)有一個摒除解7,你可以看出來嗎?
唯一解法
直觀法的根本是基礎摒除法,唯一解法其實只可算是基礎摒除法的特例,只因其成立條件十分特殊明確,可以幾乎不花腦筋就填出解來,所以特別獨立為一法,但有些人是完全不加理會的。
唯一解詳說
當數獨謎題中的某一個宮格因為所處的列、行或九宮格已填入數字的宮格達到8個時,那麼這個宮格所能填入的數字,就只剩下那個還沒出現過的數字了。
當某列已填入數字的宮格達到8個時,所剩宮格唯一能填入的數字就叫做列唯一解;
當某行已填入數字的宮格達到8個時,所剩宮格唯一能填入的數字就叫做行唯一解;
當某個九宮格已填入數字的宮格達到8個時,所剩宮格唯一能填入的數字就叫做九宮格唯一解。
(5,9)出現列唯一解6了
<
是出現列唯一解的例子,請看第5列,由(5,1)~(5,8)都已填入數字了,只剩(5,9)還是空白,此時(5,9)中應填入的數字,當然就是第5列中還沒出現過的數字了!
請一個個數字核對一下,哦!
是數字6還沒出現過,所以(5,9)中該填入的數字就是數字6了,這時我們說:
(5,9)有列唯一解6。
(7,1)出現行唯一解9了
是出現行唯一解的例子,請看第1行,除了宮格(7,1)外都已填入數字了,此時(7,1)中應填入的數字,當然就是第1行中還沒出現過的數字9了!
這時我們說:
(7,1)有行唯一解9。
(7,2)出現九宮格唯一解3了
是出現九宮格唯一解的例子,請看下左九宮格,除了宮格(7,2)外都已填入數字了,此時(7,2)中應填入的數字,當然就是下左九宮格中還沒出現過的數字3了!
(7,2)有九宮格唯一解3。
仔細想想:
以上的列唯一解其實也可看成是列摒除解、行唯一解也可看成是行摒除解、九宮格唯一解也可看成是九宮格摒除解,不是嗎?
不過9個宮格已填了8個,這樣的情況太特殊、太容易辨認了,所以獨立出來也無可厚非啦!
區塊摒除法
區塊摒除法雖屬於進階的技巧,但已入門的玩家在解題時可以很容易的配合著基礎摒除法使用,增加不少找到解的機會,將感覺順手多了。
所以即使是最簡易級的題目,已入門的玩家一樣可在解題時應用此法,並非在基礎摒除法已找不到解時才讓此法上陣。
本網頁中的很多例子,如果堅持使用基礎摒除法,其實仍可找到其他數字解,但因機緣湊巧,恰可用上區塊摒除法找到解,所以仍拿來當做例子啦!
什麼是區塊呢?
1.對列而言,就是分屬三個不同九宮格的部分。
在下圖中,我們分別用不同的顏色來標示列的三個區塊:
2.對行而言,也是分屬三個不同九宮格的部分。
在下圖中,我們分別用不同的顏色來標示行的三個區塊:
3.對九宮格而言,就是分屬三個不同列或三個不同行的部分。
在下圖中,我們分別用不同的顏色來標示九宮格的三個區塊:
為了說明及學習的方便,尤怪將區塊摒除法分為4個不同的型式,但在實際應用時,即使玩家不知此分類,也可以很容易的順著區塊的所在及方向而做出正確的摒除。
4.九宮格對行的區塊摒除:
某數字在九宮格中的可填位置僅存在其中一個區塊時,因為某數一定會在本區塊,所以包含該區塊的行,可將數字填入另兩個區塊的可能性將被摒除。
5.九宮格對列的區塊摒除。
某數字在九宮格中的可填位置僅存在其中一個區塊時,因為某數一定會在本區塊,所以包含該區塊的列,可將數字填入另兩個區塊的可能性將被摒除。
6.行對九宮格的區塊摒除。
某數字在行中的可填位置僅存在其中一個區塊時,因為某數一定會在本區塊,所以包含該區塊的九宮格,可將數字填入另兩個區塊的可能性將被摒除。
7.列對九宮格的區塊摒除。
某數字在列中的可填位置僅存在其中一個區塊時,因為某數一定會在本區塊,所以包含該區塊的九宮格,可將數字填入另兩個區塊的可能性將被摒除。
九宮格對列、行的區塊摒除
使用區塊摒除法,只要在九宮格摒除解的系統尋找時,注意是否有區塊摒除的成立條件即可,當區塊摒除的條件具備了,就等於多了一個摒除線,找到解的機會自然多了一點,將感覺順手多了。
例如在<
中,如果不使用或不會使用區塊摒除法,是找不到1的九宮格摒除解的,但如果用上了區塊摒除法,將可找到四個數字1的填入位置哦:
中:
先從數字1開始尋找九宮格摒除解,當找到中左九宮格時,由於(3,2)、(4,5)的摒除,將使得數字1可填入的位置只剩下(5,1)及(5,3),因為每一個九宮格都必須填入數字1,既然中左九宮格的數字1一定會填在(5,1)~(5,3)這個區塊,那表示包含這個區塊的第5列,其另兩個區塊就不能填入數字1了,因為同一列中只能有一個數字1,所以可將第5列另兩個區塊填入數字1的可能性摒除。
第5列的區塊摒除,配合(4,5)及(9,7)的基礎摒除,使得(6,8)出現了中右九宮格摒除解了。
只找到一個還不過癮,當搜尋到下左九宮格時,由於(3,2)、(9,7)的摒除,將使得數字1可填入的位置只剩下(7,1)及(7,3),同理,因為每一個九宮格都必須填入數字1,既然下左九宮格的數字1一定會填在(7,1)~(7,3)這個區塊,那表示包含這個區塊的第7列,其另兩個區塊就不能填入數字1了,因為同一列中只能有一個數字1,所以可將第7列另兩個區塊填入數字1的可能性摒除。
第7列的區塊摒除,配合(4,5)及(9,7)的基礎摒除,使得(8,6)出現了中下九宮格摒除解了。
找到了(6,8)及(8,6)兩個摒除解之後,因謎面的數字已有改變,所以循例應回頭再找一遍,相信大家一定可以很容易的找到另兩個九宮格摒除解:
(1,4)、(2,9)。
九宮格對行的區塊摒除和九宮格對列的區塊摒除同理,只不過九宮格對列的區塊摒除是數字僅出現在九宮格的橫向區塊,所以受到影響的就是列;
而九宮格對行的區塊摒除是數字僅出現在九宮格的縱向區塊,所以受到影響的就變成是行而已。
圖6>
是一個九宮格對行的區塊摒除之例子。
你可以看出下左九宮格的數字9應該填在什麼位置嗎?
圖6>
由於(5,8)的摒除,使得數字9在中左九宮格可填入的位置只剩下(4,3)及(6,3),因為每一個九宮格都必須有數字9,既然中左九宮格的數字9一定會填在(4,3)~(6,3)這個區塊,那表示包含這個區塊的第3行,其另兩個區塊就不能填入數字9了,因為同一行中也只能有一個數字9,所以可將第3行另兩個區塊填入數字9的可能性摒除。
第3行的區塊摒除,配合(2,2)、(7,6)及(9,9)的基礎摒除,使得(8,1)出現了下左九宮格摒除解9了。
看過了以上的例子後,首先要提醒大家,前面已提過區塊摒除需機緣湊巧,並非隨手可得哦!
大部分的時候,雖然發現了區塊摒除的條件,但卻是空包彈,一樣找不到摒除解!
例如:
在<
的上右九宮格中,由於(3,2)、(9,7)的摒除,使得上右九宮格的數字1只出現在(1,9)及(2,9),符合區塊摒除的條件,但配合現有的數字1做摒除後,並無法找到任何摒除解。
所以當找到區塊摒除的條件時,並不必太高興!
行、列對九宮格的區塊摒除
一般而言,九宮格對行、列的區塊摒除是容易被發現和運用的,因為一般人常把注意力放在九宮格摒除解的尋找上,所以找到的自然是九宮格對行、列的區塊摒除條件;
而行、列對九宮格的區塊摒除成立條件需配合行、列摒除解的尋找,所以常被疏忽了。
不過尤怪認為:
解題本以增加生活樂趣為上,如果可用簡單的方法解題,何必強要使用困難的方法呢?
配合一般人不到不得已不去尋找行、列摒除解的心態,下面這個例子和前面的例子就不同了,如果不使用或不會使用行、列對九宮格的區塊摒除,是找不到8的行摒除解的,請先解解看,然後再看後面的說明:
在本例中:
由於(5,5)、(7,7)的摒除,使得數字8在第2列可填入的位置只剩下(2,2)及(2,3),因為每一列都必須有數字8,既然第2列的數字8一定會填在(2,1)~(2,3)這個區塊,那表示包含這個區塊的上左九宮格,其另兩個區塊就不能填入數字8了,因為同一個九宮格中也只能有一個數字8,所以可將上左九宮格另兩個區塊填入數字8的可能性摒除。
於是上左九宮格的區塊摒除,配合(5,5)、(7,7)的基礎摒除,使得(6,1)出現了第1行摒除解8了。
下面這個例子更困難一點,必須先找到九宮格對行、列的區塊摒除,然後再利用行、列對九宮格的區塊摒除,來找到8的行摒除解,請先解解看,給自己一點挑戰,然後再看後面的說明:
由於(3,6)、(7,1)的摒除,使得數字8在上左九宮格中可填入的位置只剩下(1,2)及(2,2),符合了九宮格對行的區塊摒除之條件,所以可把第2行其它區塊填入數字8的可能性摒除掉。
圖14>
接下來:
利用上左九宮格對第2行的區塊摒除,並配合(7,1)、(9,5)的基礎行摒除,使得數字8在第5列中可填入的位置只剩下(5,8)及(5,9),符合了列對九宮格的區塊摒除之條件,所以可把中右九宮格其它區塊填入數字8的可能性摒除掉。
圖15>
最後,利用第5列對中右上左九宮格的區塊摒除,並配合(7,1)、(9,5)的基礎列摒除,使得數字8在第7行中可填入的位置只剩下一個,意即找到第7行的行摒除解8了。
圖16>
多重區塊摒除
多重區塊摒除是必需同時使用2個以上的區塊摒除才能找到解的情況。
下面這個例子就必需同時運用一個九宮格對列的區塊摒除及列對九宮格的區塊摒除,才能找到5的行摒除解。
請先解解看,給自己一點挑戰,然後再看後面的說明:
圖17>
由於(2,5)、(4,7)的摒除,使得數字5在中央九宮格中可填入的位置只剩下(5,4)及(5,6),符合了九宮格對列的區塊摒除之條件,所以可把第5列其它區塊填入數字5的可能性摒除掉。
圖18>
同時:
由於(2,5)、(4,7)及(3,9)的行摒除,使得數字5在第9列中可填入的位置只剩下(9,1)及(9,3),符合了列對九宮格的區塊摒除之條件,所以可把下左九宮格其它區塊填入數字5的可能性摒除掉。
圖19>
於是,利用第5列及下左九宮格的區塊摒除,並配合(2,5)、(4,7)及(3,9)的基礎列摒除,使得數字5在第2行中可填入的位置只剩下一個,意即找到第2行的行摒除解5了。
圖20>
下面這個例子就更有趣了,請看<
圖21>
,目前謎面上一個數字7都沒有,但尤怪要說:
在上左九宮格有一個九宮格摒除解7,你是否能找出來呢?
圖21>
首先,因為上右九宮格的數字7只能填在(1,7)~(1,9)這個區塊,所以可以用九宮格對列的區塊摒除,將第1列其它區塊填入數字7的可能性摒除掉。
圖22>
當第一列的(1,1)~(1,6)填入數字7的可能性被摒除之後,因為上中九宮格的數字7就只能填在(3,4)~(3,6)這個區塊,所以也可以用九宮格對列的區塊摒除,將第3列其它區塊填入數字7的可能性摒除掉。
於是,同時利用第1列及第5列的區塊摒除,使得數字7在上左九宮格中可填入的位置只剩下一個,意即找到上左九宮格的九宮格摒除解7了。
圖23>
唯餘解法
唯餘解法的原理十分簡單,但是在實際的解題中,非常不容易辨認。
由於唯餘解非常不容易辨認,所以一般的報章雜誌及較大眾化的數獨網站,通常會將需要用到唯餘解法的數獨謎題歸入較高的級別。
但另一種以候選數法為分級根據的網站,則會把這類的謎題放到較低的級別中。
唯餘解詳說
當數獨謎題中的某一個宮格,因為所處的列、行及九宮格中,合計已出現過不同的8個數字,使得這個宮格所能填入的數字,就只剩下那個還沒出現過的數字時,我們稱這個宮格有唯餘解。
(8,6)出現唯餘解了
是出現唯餘解的例子,請看(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。
圖