數獨求教

時間 2021-06-05 23:31:45

1樓:

約定:r表示行,c表示列,綠色框框表示注意觀察的地方,黃色表示排除。有些術語如果看不懂,你可以先看看數獨解法的一些pattern。

最簡單粗暴的,把膽子放大點,認為數獨是正規數獨(唯一解),那麼可以看到r78c47中,r8c7中必然會填7,否則會出現8/9可互換的解。

1. 看下圖中的house 9 中的2,只能填在第r9,所以r9c23中的2要排除(黃色圈圈)。

2. r7中89數對,排除了同行中其他格仔中的8和9。

3. house7 中的8,只能位於r9中,所以r9c9中的8要排除。

同樣的道理,house9中的8只能填在c7中,所以r3c7中的8也要排除。

4.c3中的148三元素組,排除同列中其他格仔中的148.

5. X-Wing,這個很難觀察出來,個人認為也是這個數獨的轉折點,解決了這個問題之後,後面的都很簡單了。看下圖中的c1和c8中的9,只能位於r1和r9中,所以r1和r9中其他格仔中的9要排除。

部分同學對X-Wings可能不是很了解,這裡再解釋一下。對於這個數獨,第一列和第八列兩列中的9,剛好構成了這一模式,簡單來說就是對於第一和第八列,9能填寫的可能只有(r1c1,r9c8)或(r9c1,r1c8),把這兩種組合用虛線連起來,剛好構成了乙個X字母,這也是X-Wing這一名稱的由來。好,不管是哪種組合,第一行和第九行中其他單元格中的9都能「看見」這一結果,所以要將第一和第九行中的9剔除,也就是圖中用黃色圈圈覆蓋的9。

接下來,通過觀察可知,r9c9中填寫2,r3c9中填寫8,r2中的19數對,導致r2c3填8.

後面的就太簡單了,我就不羅嗦了。

福利:對於學習數獨的同學,我良心安利兩款好軟體:sudoku explainer和 Hoduku(都需要JRE)。

上面的截圖是依據Hoduku完成,色塊和方框是自己加上去的。當然這個數獨的整個求解過程是我自己完成的,並沒有使用Hoduku的提示功能,o(*≧▽≦)ツ。