1. 程式人生 > >數獨·唯一性技巧(Uniqueness)-1

數獨·唯一性技巧(Uniqueness)-1

唯一性技巧基於這樣一個事實——各類出版物上釋出的數獨題目都只有唯一解。事實上,絕大多數數獨玩家有這樣的共識:即合格的數獨題目解應該是唯一的。因此,為了保證題目合格、有效,出題者在製作題目時,會將一些雖然不違反數獨規則,但會導致題目出現雙解或多解的特殊結構加以處理。而唯一性技巧可以視為針對這種“處理”的逆向工程,由於這類技巧並非由數獨規則匯出,在解題過程中可否適用一直存在著大量的爭議。儘管如此,由於唯一性技巧易於發現,許多時候可以讓你在複雜的局面中直搗黃龍,一舉突破卡點,還是建議大家能夠充分掌握這類技巧。但要提醒大家,在使用唯一性技巧時一定要注意盤面是否滿足技巧的成立條件。

唯一矩形(Unique Rectangle)

我們將類似圖1這樣存在於兩宮(一定要牢記,必須是兩宮,4宮不屬於唯一矩形,不能使用這類技巧),由4個相同的雙值格組成的2行X2列的矩形稱為唯一矩形。顯然,6、8互換後會形成兩個符合數獨規則的終盤,題目存在雙解,這樣的題目是不合格的,出題者一定會避免出現這樣的局面。

  圖1 UR

Unique Rectangle Type 1

圖2中,若把r2c2的3拿去,即假設R2C2≠3,會發生什麼?

 
圖2 UR1-1

沒錯,若R2C2≠3,就會形成一個由候選數8、9組成的唯一矩形,導致題目雙解,與題目解應該唯一矛盾,故可得R2C2=3。我們把這種可能形成UR的4格中的1格多出來額外候選數X的結構稱為UR1,基於解的唯一,多出來的額外候選數X應該被填入所在格內(也可表述為,可刪去該格中X之外的數字)。

  圖3 UR1-2

圖3是另一個UR1的例子,為了避免出現UR,R9C6必須填入1。

Unique Rectangle Type 2

如果在可能形成UR的四格中,同側的兩格都多出來一個相同的候選數X,如圖4,該怎麼辦?

  圖4 UR2-1

大家可以先思考一下,本例在什麼樣的情況下會出現UR。顯然,如果R78C9中的兩個8都不成立,即R78C9≠8,會出現UR結構。為了避免這種情況發生,R78C9中的8必須要成立一個,不能同假,不管哪個8成立,都可刪去兩個8所在單元其他格中的8(本例是R9C9中的8)。我們將此類結構稱為UR2,再來看一個UR2的例子。

  圖5 UR2-2

為了避免出現UR,R8C56中的7必須要成立一個,可刪去R8C56所在的R8和B8其他位置的7。

Unique Rectangle Type 3

UR2中,同側兩格多出來的候選數是相同的,當多出來的候選數不同時又該如何?

  圖6 UR3-1

如圖6,R46C8中分別多出了(46)和(69)兩組數字,經過前面的學習,大家應該可以很快得出結論:1、這兩組數字中的4、6、9,至少會有1個成立;2、如果將R46C8打包起來看作一格,就會和R12C8形成一個(469)的顯性三鏈數對(Triplet),據此可對數對所在單元的其他格進行相應擯除。我們將這種額外候選數可以和所在單元其他格內的數字組成數對的結構稱為UR3。

  圖7 UR3-2

圖7也是一個UR3的例項,與圖6稍有不同,本例中構成的是(13)的顯性數隊(Pair),因數對所處的位置不同(B4和R6),刪除的範圍也不同。

Unique Rectangle Type 4

再來看一個例子,圖8盤勢中R3C79和R6C79構成了類似UR3的結構,易知為了避免出現UR結構,R3C79中額外的候選數(25)至少需要成立1個,但是R3中不存在(25)雙值格和R3C79中的(25)構成數對,無法直接刪數,至此似乎無從下手。不要著急,現在把視線從額外的候選數移回可能構成UR結構的候選數6和7。觀察盤勢可以發現,R3中,候選數6只存在於可能形成成UR結構的兩個格中,也就是說R3C79兩格中的6互為矛盾關係,必然是1真1假,而前邊已經分析過,這兩格中的2和5也至少需要成立一個,那麼顯然,R3C79中的候選數7就沒有了生存空間,應被刪去。

  圖8 UR4-1

若候選A、B可能構成UR結構,有額外的候選數出現在同側(行列)可能形成UR結構的兩格中,且候選數A在該側也僅能出現在這兩格中,則應刪去這兩格中的候選數B。我們將這種結構稱為UR4。圖9是另一個UR4的例子。

  圖9 UR4-2

另外,圖9中還同時存在UR3結構,額外候選數3、9和B9中R9C7的(39)構成數對,可以刪去R7C9中的9。

Unique Rectangle Type 5

UR5是UR2結構的變種,UR2中,多出來的相同的候選數X是出現在同側兩格中,而UR5中,X是出現在對角兩格或三格中,如圖10,R7C58和R8C58四格可能形成UR結構,同時R7C8和R8C7中存在額外候選數1,顯然為了避免形成UR結構,這兩個1至少需要成立一個,它們之間是強關係,可刪去共同作用格R7C4中的1。

  圖10 UR5-1

圖11也是個UR5的應用,本例中,有三個格存在額外候選數6,可刪去這3個6共同作用格R8C7中的6。

  圖11 UR5-2

Unique Rectangle Type 6

UR5是UR2的變種,UR6則是UR4的變種,我們來看例項。

  圖12 UR6-1

圖12中R4C34和R5C34四格可能形成2、5的UR結構,R4C3和R5C4對角兩格中有額外的候選數1和3,候選數5只存在於UR四格中(四格所在的行列其餘位置均不曾出現5),形成一個X-Wing的結構。此時,

1、為避免出現UR結構,R4C3和R5C4中的1、3至少要有一個成立;

2、四格中對角的兩組5必然是同真同假的關係。

顯然,要滿足條件1,R4C3和R5C4中的5就只能同假,可刪去有額外候選數的這兩格中的5。

  圖13 UR6-2

圖13是另一個UR6的例子,具體刪數過程不再贅述。



作者:零時四分_719b
連結:https://www.jianshu.com/p/becf0a1622b6
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。