孫公解碼 - 孫明揚 2022年10月12日
明知山有虎,偏向虎山行(下)
明知山有虎,偏向虎山行(下)
明知山有虎,偏向虎山行(下)
上星期身體抱恙脫稿,所以要重溫過去兩篇介紹數獨稿件,以重拾思路。再看起來,覺得用詞可以比較統一,減少初學者的誤解。最大的失誤就是沒有反覆強調破解數獨,面對有限線索,須要抽絲剝繭,篩選證據找出源頭。
破解數獨基本功就是反覆運用「M1」,從r1c1,到r9c9的所有空置單元格,都要用上。目的是尋找能接納唯一面值的空單元格。通常來說,經過第一輪檢視後,總有進帳;而這些新出現面值的單元格,當然對看見它們的其他單元格有直接影響。所以要重複用上「M1」於剩餘空單元格,看看有甚麼收穫。在這個時間也可以加上搜索「裸對」會否出現,即是同時用上「M1」與「M2」。如果有新進帳,必須重複上述過程,直至沒有新進帳為止。在遇上容易數獨,以上的兩道板斧便足夠破解。
但從開始有難度的數獨,總有相當數目的單元格無法簡單地賦予唯一的面值,遇到這情況,是適當時間用上「M3」,把所有空餘的單元格所能賦上的面值都填上。傳統的做法是把有關單元格組織成一個小九宮,以收納所有可能賦與該單元格的面值 ,分成三行三列,從左頂的1,到右底的9。
「X翼」是在破解開始有難度數獨的基本功,將會重複使用。方法是檢視九行中的每一行,從上向下,看看有沒有某個單一面價只出現於同一行上的兩個單元格內。即是這個單一面值只出現於同行兩個不同單元格內,不多不少。然後再往下逐行作出同樣操作。如果只有其他一行顯示出這特徵,看看能否把這四個位於角位的單元格,連接起來,形成一長方形或一正方形。當具備上述全部條件,便形成「X翼」。為方便行文,姑且稱這四個單元格為r3c2,r3c8,r7c2,r7c8;單一面值是9。須然上述四個單元格都有可能是9,但現實是不可能同一時間被賦予9的面值,因為同行同列不能蘊藏兩個相同的數值。唯一可能出現情況就是兩對角的單元格,即r3c2及r7c8如果能被賦予9的面值時,其他一對r3c8及r7c2便一定不能同時是9,反之亦然。當然我們在這一刻都不知道哪一對是9,及哪一對不是,這不重要,重要的是可從中得到線索如下。
且看上述的結論會對c2及c8兩列有甚麼影響。因為在兩列中的兩對單元格,即r3c2與r7c2,及r3c8與r7c8,都不能同時賦予9的面值,兩者之中,有只其一是9,雖然不知是哪一個。這個事實說明c2及c8兩列內的其他空置單元格都不會是有9的面值。所以能有十足把握把9從這兩列的其他單元格中能收納的面值剔除。
這是數獨的主要著力點,把不可能出現的面值刪除。還有很多其他技巧幫助尋找能刪除更多不合適的面值,直至有其中一個單元格只剩下唯一的面值,直至破解全部數值。
網上不乏精彩的教程。
孫公解碼 - 孫明揚 舊文
本文作轉載及備份之用 來源 source: http://www.am730.com.hk