雙隱數排除法_直行或橫列

「雙隱數位於行或列」是指,「雙隱數」的兩個「隱數格」位於同一直行或同一橫列,但分別位於不同的「小九宮」中,也可以稱為「分開型雙隱數」。

「分開型雙隱數」的產生有很多種,其中以「行列排除」獲得是屬於直接產生方式,而「宮排除」或「餘數法」則是屬於組合方式產生。


下列兩個圖例都是經由「宮排除」產生「雙隱數」格。
net538_sudoku_1
在不同小九宮中的「餘二數」格,剛好位在相同的直行或橫列中(紅色小方格),且「餘二數」格中的「餘二數」皆相同,因此組合成「分開型雙隱數」。

這個圖例中,組合產生的【列4】(45)(49){58}與【列6】(65)(67){58}兩組「分開型雙隱數」無法對該列其他小方格產生排除效用。

net538_sudoku_2
這個圖例中,組合產生的【行6】(36)(96){58}「分開型雙隱數」對該行(46)(56)(66)三個小方格產生無法再放入數字5與數字8的排除效用。

net538_sudoku_3
(17)經「宮排除」產生了{58}「餘二數」格;(77)經「餘數法」產生了{58}「餘二數」格。剛好(17)與(77)兩個「餘二數」格同時位於【行7】中,且皆具有相同的「餘二數」,因此經由組合產生【行7】(17)(77){58}「分開型雙隱數」。

【行7】(17)(77){58}「分開型雙隱數」對於【行7】中(57)(67)(87)(97)四個小方格具有不可再放入{58}兩個數字的排除作用。

net538_sudoku_4
(22)經「餘數法」產生了{58}「餘二數」格;(28)經「雙隱格」與「餘數法」產生了{58}「餘二數」格。剛好(22)與(28)兩個「餘二數格」同時位於【列2】中,且皆具有相同的「餘二數」,因此經由組合產生【列2】(22)(28){58}「分開型雙隱數」。

net538_sudoku_5
圖例中經由確定數5與確定數8「行列排除」使【列3】與【行6】皆產生「分開型雙隱數」。

【列3】(36)(39){58}列排除產生
【行6】(36)(76){58}行排除產生


「L型雙隱數」的交叉格,相對應形成「井字型」時,該交叉格(綠色小方格)具有不可以再放入該雙隱數數字的「佔格」作用。也就是(79)小方格(綠色小方格)排除再放入數字5與數字8的可能。(這個方法屬於進階技法,爾後再詳述)

net538_sudoku_6
圖例中(41)和(15)確定數5、(61)和(95)確定數8同時對【列5】作排除,產生(57)(59){58}「分開型雙隱數」。

(57)(59){58}同時位在【宮6】中,使【宮6】中{58}兩個數字不可以再放入(48)(68)兩個小方格,所以【行8】中{58}兩個數字只能放入(28)(88)兩個小方格中,產生【行8】(28)(88){58}「分開型雙隱數」。

【列5】(57)(59){58}列排除產生
【行8】(28)(88){58}行排除產生(經由雙隱數)

需經由多層次產生的「餘數格」求解,在「直觀式解法」中屬於相當高級的謎題。

雙隱數排除法_小九宮

隱數排除法

「某些數字」已經確定必須被放入「某些小方格」中,這些數字的數目與小方格的數目相等,使這些小方格以外的其他小方格,不可以再放入這些數字。

利用這個特性,可以對其他小方格做「排除再放入這些數字」的可能。

通常這些小方格是由「餘二數」或「餘三數」所組成,可由「排除法」或「餘數法」獲得。


雙隱數排除

「兩個數字」在某一行或某一列或某一小九宮中,必須被放入「兩個小方格」,只是尚未確定哪一個數字放入哪一小方格中。

「雙隱數」是「隱型確定數」,兩個小方格佔有兩個隱型確定數,相當於由兩個「雙隱格」組成,也就是「雙隱格」的兩倍排除效果。

若「雙隱數」位在同一小九宮中,比較容易找到,若是屬於「分開型雙隱數」,則不易察覺。

雙隱數_小九宮_1
【宮1】【宮5】【宮9】中各有雙隱數;而【宮5】與【宮9】是經由宮排除產生。

【宮5】(46)(64)雙隱數需併用其他技法,才能產生排除作用。

詳解
【宮1】中,只剩(12)(22)兩個小方格尚未填入數字,也只剩數字5與數字8尚未出現;因此數字5與數字8必須被放入【宮1】剩餘的(12)(22)兩個小方格中,只是尚未確定哪一個數字必須放入哪一格。

(35)與(58)各有確定數5,同時對【宮5】作排除,使【宮5】中數字5必須被放入(46)(64)兩個小方格中。

(59)與(75)各有確定數8,同時對【宮5】作排除,使【宮5】中數字8必須被放入(46)(64)兩個小方格中。

仔細比對發現(46)與(64)兩個小方格同時必須被放入數字5與數字8,只是尚未確定哪一個數字必須放入哪一格;但可以確定的是,除了數字5與數字8之外,其他任何數字都將不可以再放入(46)與(64)兩個小方格。

因此可以說(46)(64)有數字5與數字8的「雙隱數」。
標記為「【宮5】(46)(64){58}宮排產生」

用相同方法可以發現,(73)與(58)確定數5、(75)與(38)確定數8同時對【宮9】作排除,可獲得(87)(97)有數字5與數字8的「雙隱數」。

雙隱數_小九宮_2
圖例無法使用「排除法」獲得解答格。

雙隱數_小九宮_3
經過「排除法」產生的「雙隱數」可以繼而獲得A-D四個解答,可以找到這四個解答格各為何數嗎?

雙隱數_小九宮_4
圖例(41)與(55)有確定數9,同時對【宮6】作排除,【宮6】只剩(67)與(68)可供放入數字9。因(67)為「(49)(67){58}雙隱數」之其中一格,不能再放入數字9,所以【宮6】中,數字9只能填入(68)小方格。【宮6】因「雙隱數」作用產生(68)=9「宮排除」解。

雙隱數_小九宮_5
圖例【行5】有(45)(65){58}「雙隱數」,使【行5】能夠放入數字7的小方格只剩(15)與(95)兩個小方格。

(13)有確定數7對【行5】作行排除,獲得(95)=7解;【行5】因「雙隱數」作用產生「行排除」解。

雙隱數_小九宮_6
【行5】因(45)(65){58}「雙隱數」使【行5】中數字6只能填入(15)小方格;【行5】因「雙隱數」作用產生「餘一格」解。

本例也可以看成(15)=6「餘一數」解。

雙隱數_小九宮_7
【宮5】有(45)(65){58}「雙隱數」使【宮5】只剩(54)與(56)兩個小方格尚未填入數字,而【宮5】中也只剩下數字6與數字7尚未出現,因此數字6與數字7必須被放入(54)與(56)兩格中,形成了(54)(56){67}「雙隱數」(也可以看成有數字6與數字7的雙隱格)。

(69)(13)各有確定數7,與(54)(56){67}(數字7的雙隱格)同時對【宮4】作排除,可得(42)=7宮排除解。本例是因「雙隱數」產生「雙隱數」的宮排除解。

雙隱數_小九宮_8
上述詳解A-D待填格的解答過程,解答如黃色小方格內數字。

雙隱數_小九宮_2
現在將標記符號去除,試著用「直觀式解題」模式再複習一次,是否能夠看出排除方式,找出解答。

以上所列案例,是為了讓讀者容易明嘹「雙隱數在小九宮」的使用方法,列出較簡單的類型提供參考。

請注意!「雙隱數」產生的方式除了上述介紹的「宮排除」方法外,還有以「行列排除」與「餘數法」方式產生,因後兩種方法難度較高,一併在下一帖中介紹。

大井字型排除法

「大井字型排除」法形成於直行與橫列中。
同時由兩個行(或列)中「分開型双隱格」相對應所產生,對其他小方格做排除作用。所謂的「分開型双隱格」是指:某一列或某一行中,兩個「隱格」分別位於不同小九宮中。

「大井字型排除」法(以下簡稱:大井字排)必須在上述的條件下方能成立。「大井字排」法在「直觀式解題」(沒有標記候選數)中,屬於高級解題技巧,容易隱藏,尋找不易,變化多樣、而且很容易忽略。通常「大井字排」法會與其他技法併用求解。


數獨_大井字排_1
(25) 確定數字5同時對【列3】與【列7】作「列排除」,產生(32)(38)(72)(78)四個隱格,這四個隱格相互對應,符合了「大井字排」形成條件。

數獨_大井字排_2
若將數字5放入(三2)小方格則【行2】(四2)(五2)(六2)三個小方格不可以再放入數字5,且【列七】中數字5必須被放入(七8)小方格中,因此【行8】(四8)(五8)(六8)三個小方格也不可以放入數字5。

數獨_大井字排_3
若將數字5放入(七2)小方格則【行2】(四2)(五2)(六2)三個小方格不可以再放入數字5,且【列三】中數字5必須被放入(三8)小方格中,因此【行8】(四8)(五8)(六8)三個小方格也不可以放入數字5。

數獨_大井字排_4
因此不管數字5放入哪一個粉紅色隱格中,【行2】(四2)(五2)(六2)三個小方格與【行8】(四8)(五8)(六8)三個小方格(黃色小方格)都不可以放入數字5了。

因為兩組「分開型雙隱格」相對應位於【列】中,形成相對應的【行】部分小方格不可以放入該隱格數字,這就是「大井字排」的作用。

數獨_大井字排_5
(32)(38)(72)(78){5}形成「大井字排」,同時與(44)確定數5對【宮4】作排除,可以獲得:(53)=5 大井字排除+宮排除解。

數獨_大井字排_6
試著找看看該圖例已經有一個解答,是如何產生的?

數獨_大井字排_7
經由「大井字排」產生的兩個「双隱格」同時對【宮5】作排除得解。
(55)=5。請自行推敲。

數獨_大井字排_8
圖例是一個標準數獨謎題。

數獨_大井字排_9
填入5個確定數(灰色數字)後遇到瓶頸。

數獨_大井字排_10
在這麼多的「明數」擾亂視線,找「大井字排」不容易,尤其當思考方向還不是尋找「大井字排」時,可能已經浪費很多時間用其他技巧在解題。

(38)(67)(72)三個確定數字3同時對【列2】【列4】作排除產生(21)(25)與(41)(45)兩組數字3「分開型雙隱格」。這兩組「分開型雙隱格」相對應形成數字3「大井字排」條件。


為了介紹「大井字排」與「餘數法」併用解題案例,只做(55)的解答;事實上,有一個解答格應該先被填入才是正確的,請讀者試著自行推敲、比對,是否能夠找到呢?提示:「大井字排」與「双隱格」宮排除解。或是「大井字排」列排除解。


數獨_大井字排_11
(32)(47)(78)三個確定數字4同時對【列6】【列8】作排除產生(61)(65)與(81)(85)兩組數字4「分開型雙隱格」。這兩組「分開型雙隱格」相對應形成數字4「大井字排」條件。

數獨_大井字排_12
圖例已經標示「大井字排」的位置,有兩組同時存在。
推敲、比對與「數數」,經由兩組「大井字排」與「餘一數法」可以獲得解答。
(55)=5 兩組「大井字排」+「餘一數」得解。

「大井字排」除了上述案例外,還有非常多種類型,併用情形相當多樣;每當找出經由這個排除法獲得解答時,心中會很愉悅,感覺很有美感。不過,當「大井字排」的作用是在產生「餘二數」或「餘三數」時,難易度將會提高許多。

小井字型排除法

由多個「隱格」(或隱數)相對應組成,運用其相對應「隱數格」產生的多行(或多列)對其它小方格產生排除作用。

小井字型排除法

形成於小九宮中。由多個隱格(或隱數)在兩個小九宮中相對應,產生對另一個小九宮的排除作用。「小井字型排除」法(以下簡稱:小井字排)是尋找行、列排除的簡易方法。
數獨_小井字排_1
【宮8】中數字5必須被放入標記有△的隱格。

數獨_小井字排_2
【宮4】經由宮排除產生標記有△的隱格。
【宮6】中只剩標記有△的隱格可以放入數字5。

數獨_小井字排_3
若數字5被放入【宮4】(41)或(43)的其中一個隱格,則(41)(43)所在的【列4】其他小方格不可以再放入數字5,也就是【宮5】(44)(45)(46)與【宮6】(47)(48)(49)的小方格不可以放入數字5。

同時【宮6】中的數字5必須被放入(67)(68)(69)其中一格,使(67)(68)(69)所在的【列6】其他小方格不可以再放入數字5,也就是【宮5】(64)(65)(66)的小方格不可以放入數字5。

數獨_小井字排_4
若數字5被放入【宮4】(61)或(63)的其中一個隱格,則(61)(63)所在的【列6】其他小方格,不可以再放入數字5,也就是【宮5】中(64)(65)(66)與【宮6】中(67)(68)(69)的小方格不可以放入數字5。

同時【宮6】中的數字5必須被放入(47)(48)(49)其中一格,使(47)(48)(49)所在的【列4】其他小方格不可以再放入數字5,也就是【宮5】(44)(45)(46)的小方格不可以放入數字5。

因此可以發現,不管【宮4】中數字5是放入哪一個隱格,【宮5】中(44)(45)(46)與(64)(65)(66)都不可以放入數字5。


數獨_小井字排_5
因此,(二4)數字5與標記有△的隱格,同時對【宮5】作排除,產生:(55)=5 小井字排+双隱格排除解。

數獨_小井字排_5-1
也可以用兩個「明數」與一組「雙隱格」「列排除」獲得相同的解答。

但是可以發現,要尋找「列排除」解比較不容易看出,尤其本例中還需搭配一組「雙隱格排除」。


「小井字排」是運用在小宮對小宮的排除方法,也是尋找行、列排除的簡易方法。

若行、列排除得解需使用到兩個或兩個以上「作用格」時,則使用「小井字排」尋找行、列排除解比較容易,也比較輕鬆。(請注意!不是所有行、列排除解都可以經由「小井字排」得解)。


「小井字排」還有下列的基本形式,請自行推敲、理解。
數獨_小井字排_6

小井字型排除法運用層面很廣,也經常出現在不同難易度的謎題中。


下列圖例不能符合「小井字排」的條件,無法對其他小九宮形成排除作用。請自行推敲、比對「小井字排」無法成立的條件及原因。
數獨_小井字排_8
數獨_小井字排_9
數獨_小井字排_10
數獨_小井字排_11


舉三個經由「小井字排」獲得解答的圖例說明。
數獨_小井字排_12
【宮1】【宮4】中隱格相對應形成小井字排,對【宮7】作排除產生(八3)(九3)双隱格;再與【宮8】(八6)(九6)双隱格相對應形成小井字排。再與(48)確定數5同時對【宮9】作排除,獲得(七9)=5 小井字排除解。
圖例中由「小井字排」產生另一組「小井字排」,再獲得解答。


數獨_小井字排_13
圖例也是用了兩組「小井字排」獲得(五6)=5解答。

數獨_小井字排_14
一組「小井字排」與一組「餘數法」同時作用,使(57)待填格獲得數字8解答。
(57)=8
小井字排+餘一數解

「小井字排」與「餘數法」共同作用產生解答的解題技巧經常出現在高級數獨謎題中。

數獨解題難易度分級淺見

不才的老葉!

被罵了,拖不住了,再不上貼,就反了。好吧!就來談談小周最近在研究的數獨難易度的客觀條件,提供筆者的個人淺見。

許多人會以數獨初盤上的提示格多寡來認定該數獨的難易度,原因很簡單,需要解出較多的解題格,相對需要花費較多的時間來解題。

這個概念基礎是對的,尤其是當尚未解題時看到初盤時的的基礎判斷。

例如一個數獨初盤的提示格為20個,另一個數獨盤的提示格為30個,若兩個數獨的解題順序及解題技巧相似(這裡假設都只需直接或隱性排除法即可完成),那兩者所花費的時間會不一樣。

提示格為20的數獨需解出61個空格,提示格為30的數獨需解出51個空格,若每一格的解題平均時間為2.5秒,那兩者解題所需時間差距就大約是25秒了。

許多人會認為解題所需時間不應納入謎題難易度條件中;但是經過觀察、比較及思考數獨謎題的難易度認定,回歸大數法則中,最後還是會以解題時間平均值作為難易度的參考值之一。

所以在筆者的觀念裡,解題所需花費的時間也需納入數獨難易度中。

但是光看提示格的多寡來訂定謎題的難易度,並非完全正確,因為有許多的因素會影響解題所需花費的時間。

哪些因素會影響解題所需時間,筆者歸納為下列五點:

一、首推解題技法。若不熟悉解題技法,或是用了更複雜的技法,所需使用的推理、分析與判斷要素就更多,當然時間花費就會增加。

二、作用格(作用中的確定數)相對於解答格的相對位置。牽涉到作用格相對於解答格的距離、數量與相距間的擾亂數(非作用中的確定數或空格)。

三、同時有解答的空格數目、數量與次數。也就是同一時間可供選擇有解答的空格數量愈多,找到解答格的機會愈大、速度愈快;若這樣的次數愈多,整體解答時間花費就愈少。

四、解答順序或流程。包含填入數字號碼順序,填入格順序或流暢度。

五、確定數與擾亂數的分佈狀態。確定數的分配情形影響解題時的判斷,如引導使用錯誤的解題技法或思考方向,以增加尋找的時間。


這裡僅以解題技法及應用做難易度說明,第二、三、四、五類不再分析。

1.以下是以解題技法難易度做順序,以每一小空格獲得解答的難易度分類(未考慮定數距解答格、關鍵格的距離,與擾亂數分配及數量) 。

2.以下是以不標記候選數解題模式來標記難易度分級(直觀法解題分級)。

3.以下是以獲得解答格經由比對、判斷、分析、推敲所需花費的時間做排序(純屬個人喜惡及主觀觀點,僅供參考)。

4.以下只用到筆者提倡的四類解題技法做分類(排除法、餘數法、井字型法、隱數法)。



圖例中,藍色小方格為解答格,數字皆為5。

1.宮餘一格解
數獨_解題難易度分級_1

2.一個定數宮直接排除解
數獨_解題難易度分級_2

3.行(列)餘一格解
數獨_解題難易度分級_3

4.同行(列)宮兩個定數宮排除解
數獨_解題難易度分級_4

5.兩個定數宮排除解
數獨_解題難易度分級_5

6.一個定數行(列)排除解
數獨_解題難易度分級_6

7.雙隱格+1個定數宮排除解
數獨_解題難易度分級_7

8.雙隱數在宮+宮餘一格解
數獨_解題難易度分級_8
這個小方格解看起來似乎很容易得解,但是許多人在作排除解時,因為思考方向仍在尋找排除解,所以容易忽略這個簡單的解答格。

另外,這個解答格須經由兩次的數數後(列數完換數宮)才能得解,容易粗心大意的算錯或填錯。


9.三隱數在宮+宮餘一格解
數獨_解題難易度分級_9

10.雙隱格(或雙隱數)行(列)排除解
數獨_解題難易度分級_10

11.三個定數宮排除解
數獨_解題難易度分級_11

12.四個定數宮排除解
數獨_解題難易度分級_17

13.雙隱格+兩個定數宮排除解
數獨_解題難易度分級_12

14.雙隱數在宮+行(列)餘一格解
數獨_解題難易度分級_13
行列在做數數時很容易出錯。


15.三隱數在宮+行(列)餘一格解
數獨_解題難易度分級_14

16.兩個定數行(列)排除解
數獨_解題難易度分級_15

17.兩組隱格(隱數)+一個定數宮排除解
數獨_解題難易度分級_16

18.隱格+三個定數宮排除解
數獨_解題難易度分級_18

19.兩組隱格+兩個定數宮排除解
數獨_解題難易度分級_19

20.全定數餘一數解
數獨_解題難易度分級_20

21.小井字排除解
數獨_解題難易度分級_21
圖例用了兩組小井字排


22.三個定數行(列)排除解
數獨_解題難易度分級_22

23.隱格餘一數解
數獨_解題難易度分級_23

24.大井字排除解
數獨_解題難易度分級_24
圖例用了一組大井字排及一組小井字排


25.雙隱格+2個定數行(列)排除解(或兩個雙隱格+1個定數)
數獨_解題難易度分級_25

26.四個定數行(列)排除解(含部分為隱格)
數獨_解題難易度分級_26

27.分開型雙隱數(餘二數組成)+餘一數解
數獨_解題難易度分級_27

以上基本類型有27種。

以下乃各種類型的交叉作用,最多為四種技法直接對解答格同時作用。


試著找這個圖例中的解答格在哪裡?用了哪幾種技法?
數獨_解題難易度分級_28

找到了嗎?

數獨_解題難易度分級_29
大井字+雙隱數(宮排除產生)+分開型雙隱數(餘二數組成)+餘一數解


可以發現上列的技法使用時,查找、比對、分析、判斷、推敲所需花費的時間不一樣。

因花費時間長短而感到難易度不同,但並非單單只用上述分類就可以正確的給予難易度分級,尚須將第二、三、四、五類影響條件納入。

如上述;有能力設計解題程式的人,就可以依照自己的分級與時間影響因素給予每一解題格難度係數,進而加總整個謎題的難度分數並分類。

若有機會再來探討數獨的解題格、解題流程、乃至謎題及難易度的標記研究。

唉!不才的老葉。

2007/03/14 補正

感謝同好小周指正,最後一個圖例有二個解答格、三種方法可以得解,並且繼續設計本謎題將會成為多重解謎題。

不才的老葉
為了做技法併用圖例介紹,邊寫文章邊設計,並沒有仔細驗證解題格數量(應該說是沒有看出來),造成有2個解答格現象,於此說聲抱歉!

另一種解法<宮排除解>

數獨_解題難易度分級_30
2個數字3的大井字+1個確定數同時對 [宮6] 做排除,可得(69)=3排除解。


另一種解法<行排除解>
數獨_解題難易度分級_31
2個大井字+3個定數同時對 [行9] 做排除(6線排除),可得(69)=3排除解。

這個排除法無法成立。
雖然是合理的排除,但同時6條線排除將不會出現在合格的謎題。

熱門文章