數獨遊戲解題技巧

2021-06-27 07:42:35 字數 3142 閱讀 3888

一直都有在玩數獨

一般難度的都能完成

可是高難度的就完全沒辦法了

好多累計玩了幾十小時都解不出

剛剛在網上看到這個介紹數獨技巧的帖子

真的很實用

不過方法太多

得慢慢消化。。。

i)

唯一數法

:如果我們發現某個格仔中只有乙個可用候選數,那麼這個格仔必然是這個數字,這就是唯一數法

如下面例子,h5格仔中只有唯一候選數3

ii)隱含唯一數法

如果我們發現某一行某一列或某個九宮有乙個候選數隻出現在乙個格仔裡面,那麼這個格仔必然是這個數字,這就是隱含唯一數法,如下面例子,第3列候選數4只出現在格仔i3中

數對法如果我們發現某一行某一列或某個九宮有兩個格仔只使用了兩個候選數,那麼這兩個格仔必然正好是這兩個數字,那麼在這個單元(行,列,或九宮)中,其它格仔不會出現這兩個候選數,這就是數對法,如下面例子,第一列中b1和g1的候選數都是7,8;那麼d1,h1中的候選數7,8可以刪除。

iv)三鏈數法

如果我們發現某一行某一列或某個九宮有三個格仔只使用了三個候選數,那麼這三個格仔必然正好是這三個數字,那麼在這個單元(行,列,或九宮)中,其它格仔不會出現這三個候選數,這就是三鏈數法,如下面例子,

最下面中間的九宮中格仔h4,h5,i5三個格仔都只使用候選數2,8,6;所以g4,g6,i6中出現的8,6都可以刪除

v)四鏈數法

如果我們發現某一行某一列或某個九宮有四個格仔只使用了四個候選數,那麼這四個格仔必然正好是這四個數字,那麼在這個單元(行,列,或九宮)中,其它格仔不會出現這四個候選數,這就是四鏈數法;如下面例子中

上面中間的九宮中四個格仔a5,b5,c4,c5都只使用了數字1,2,3,4;所以另外4個格仔a4,a6,b4,c6中出現的數字1,2,3,4可以刪除

vi)隱含數對法

如果我們發現某一行某一列或某個九宮中有兩個候選數隻出現在兩個格仔中,那麼這兩個格仔必然正好是這兩個數字,那麼這兩格仔中其他候選數可以刪除,這就是隱含數對法;如下面例子,第a行中,只有格仔a7,a8使用了數字6,8;所以這兩個格仔中其它數字2,5,9都可以刪除

隱含三鏈數法

如果我們發現某一行某一列或某個九宮中有三個候選數隻出現在三個格仔中,那麼這三個格仔必然正好是這三個數字,那麼這三格仔中其他候選數可以刪除,這就是隱含三鏈數法,如下面例子,第8列中只有格仔c8,f8,g8使用了數字1,3,4;所以格仔f8中出現的其它數字6,7,8可以刪除

隱含四鏈數法

如果我們發現某一行某一列或某個九宮中有兩個候選數隻出現在兩個格仔中,那麼這兩個格仔必然正好是這兩個數字,那麼這兩格仔中其他候選數可以刪除,這就是隱含四鏈數法,我們借用四鏈數中的例子,可以發現上面中間的九宮格中,只有格仔a4,a6,b4,c6使用了四個數字5,6,7,9;所以它們使用的其他數字1,2,3,4可以刪除。

ix)區域刪減法

如果我們發現某一候選數在某一單元(行,列,九宮)中完全處在同另外乙個單元的交集中,那麼在另外乙個單元中,不在交集中的這個候選數必然可以刪除,如下面例子,第d行中所有數字5都正好在左邊中間的九宮中,所以在這個九宮中,不在第d行的候選數5(e3中)可以刪除

x) 矩形法

如果某個候選數在某兩行(列)中只出現在某兩行(列)中,那麼在那兩行(列)中,不在那兩列(行)的這個候選數都可以刪除,如下面例子,第c行和第f行的候選數3都正好是兩個而且出現在第1列和第8列;所以第1列和第8列中,不在第c行和第f行的候選數3 (a8,d1,d8,i1,i8)都可以刪除

把它擴充套件到三行或四行就可以得到高階矩形法(我也看到翻譯成3鏈列,4鏈列的),同樣下面例子中可以刪除藍色的候選數

xi)唯一矩形法

最新新增唯一矩形法,這個方法利用了數獨結果唯一性的特性:如果有四個構成矩形頂點的格仔只使用兩個數字,而且同在一行或同在一列的格仔在同乙個宮格中,那麼這個局面的結果必然不是唯一的(交換它們使用的數字同樣可以得到合法的數獨結果),必然不是合法的數獨局面。通過這個結論我們分別得到兩種刪減法

:如下圖a3,c3,a9,c9中,c3必然不能取候選數1和9(不然結果必然不唯一),所以c3只能取候選數5.

如下圖,d2和f2中必然有乙個格仔結果是3,不然d2,f2,d9,f9都只能是數字1和9,結果必然不唯一。

由此進一步得出第2列中h2不能取3(同樣還可以得出在左中宮格中f3不能取3)

xii)

關連數刪減法

通過找到一串強關聯資料來得出矛盾來刪除候選數。

如下圖,第9列只有g9和d9有候選數3,它們之間是強關聯資料,同樣d4和i4之間也是強關聯的。

此外d9和d4之間在同一行都使用資料3,它們是弱關聯。這樣通過一系列強弱關聯(弱關聯可以用強關聯替代),

如果我們可以得到乙個矛盾鏈。如下圖,我們可以通過提示中邏輯推理排除g6=3(實際上還可以排除i7=3和i8=3)

下面是乙個更加複雜的例子,用到了多個候選數:

python解題技巧 Python 解題技巧

python 解題技巧 一直都是用 c 和 c 解題,某題簡單解完後便心血來潮想用 python 解一次,發現一些問題,特寫此篇隨筆來記錄.一,輸入格式 例 輸入第 1 行給出正整數 n 和整數 m 第 2 行給出 n 個整數,其間以空格分隔.大多數題目都是要求一行給多個元素,其間以空格為間隔,而在...

Python解題技巧

python解題技巧 一直都是用c 和c解題,某題簡單解完後便心血來潮想用python解一次,發現一些問題,特寫此篇隨筆來記錄。例 輸入第1行給出正整數n和整數m 第2行給出n個整數,其間以空格分隔。大多數題目都是要求一行給多個元素,其間以空格為間隔,而在python中只用input 是不行的,若多...

GRE填空解題技巧介紹

gre填空技巧 1.重複的基本規律 點對點 2.攻其一點,不及其餘 3.讀題幹的策略 先讀主幹,再讀分隔 4.分析的策略 a.分析句子結構b.定位中心詞和邏輯關係c.選詞d.理解句意 5.分析的具體方法 分隔與粘連 6.分隔結構通常為定語從句,同位語從句,分詞結構,大的介詞短語結構.分隔結構一旦出現...