Sudoku Royale取得

數獨劍魚(Swordfish)技巧:進階解法詳解

繁體中文

劍魚(Swordfish)是一個進階數獨技巧,它把X翼從兩橫列擴展到三橫列。規則是這樣的:一個數字在三橫列裡每橫列都只有兩個或三個可填的格子,而且這些格子全都在同樣的三直行裡,那麼就可以把這個數字從這三直行的其他所有格子中排除。

劍魚屬於一個叫「魚」的結構家族。X翼用兩橫列兩直行,劍魚用三橫列三直行,水母 (英文)(Jellyfish)用四橫列四直行。結構越大,越少見,也越難看出來。本文先說明規則,再在一整塊棋盤上逐格示範。

劍魚的規則

劍魚需要滿足三個條件:

  1. 選一個數字,比如 2。
  2. 找三橫列,這個數字在每一橫列裡都只有兩個或三個可填的格子。
  3. 檢查所有這些格子所在的直行,合起來必須恰好是三直行。

這三橫列裡每一橫列都要出現一次這個數字。在這些橫列裡,這個數字只可能出現在這三直行,也就是三個數字要填進三直行,其中任意兩個不能在同一直行,所以三直行各得到恰好一個。

這就是說,這三直行的這個數字已經在這三橫列裡了。這三直行的其他格子都不可能再填它,所以可以把它從這些格子裡全部排除。

一橫列不必在三直行裡都有這個數字,某一橫列可以只在其中兩直行有。關鍵是總數:三橫列所有的格子合起來,必須恰好落在三直行裡。

一句話記住規則

三橫列,一個數字,同樣的三直行:把這個數字從這三直行的其餘格子中排除。

例題,一步一步看

在這個盤面裡,簡單的步驟都已經走完,沒有唯一數可填。每個空格裡都標出了候選數,也就是那裡仍然可能填的數字。

數獨棋盤,所有候選數都已寫出。已經沒有唯一數可填。1629543289728297862914354358297629172134581369648349123857589589193761282842589162735927894283459249278592791628989716452893C1R1C2R2C3R3C4R4C5R5C6R6C7R7C8R8C9R9
使用劍魚之前的盤面。每個空格都標出了候選數。
  • 5 提示數
  • 5 已填好
  • 5 新填的數字
  • 5 構成結構的候選數
  • 5 可排除的候選數

這是 Sudoku Royale 的 Dojo 中這項技巧課程所用的棋盤,你可以在 App 裡跟著同一個例子練習。

找出結構

只看數字 2,一橫列一橫列地數它的格子。有三橫列正好配得上:

  • 第 2 橫列: 2 只可以填在 R2C1 和 R2C5。
  • 第 3 橫列: 2 只可以填在 R3C5 和 R3C8。
  • 第 9 橫列: 2 只可以填在 R9C1 和 R9C8。

這六個格子只用了三直行:第 1 直行、第 5 直行和第 8 直行。這就是數字 2 的劍魚。每一橫列裡這個數字只在三直行中的兩直行出現,而且每一橫列缺的是不同的一直行。結構仍然是完整的,因為三橫列合起來恰好用了三直行。

數字 2 的劍魚。在第 2、3、9 橫列裡,數字 2 只可能出現在第 1、5、8 直行,每橫列兩個格子。第 1 直行的另外一個格子和第 8 直行的另外一個格子排除 2。1629543289728297862914354358297629172134581369648349123857589589193761282842589162735927894283459249278592791628989716452893C1R1C2R2C3R3C4R4C5R5C6R6C7R7C8R8C9R9
第 2、3、9 橫列和第 1、5、8 直行的數字 2 的劍魚。六個結構格子是橘色。2 從 R7C1 和 R6C8 中排除。

檢查兩種可能

  • 情形 A: 第 2 橫列的 2 在 R2C1。那麼第 9 橫列的 2 不能在第 1 直行,只能在 R9C8。這樣第 3 橫列的 2 不能在第 8 直行,只能在 R3C5。
  • 情形 B: 第 2 橫列的 2 在 R2C5。那麼第 3 橫列的 2 在 R3C8,第 9 橫列的 2 在 R9C1。

兩種情形裡,第 1 直行、第 5 直行和第 8 直行都各從這個結構中得到一個 2。所以這三直行的其他格子都不可能是 2。把 2 從第 1 直行的 R7C1 和第 8 直行的 R6C8 排除。第 5 直行沒有其他帶候選數 2 的格子,所以那裡沒有變化。

接下來怎麼走

劍魚本身不會填入數字,但它排除的候選數常常帶來下一步。R6C8 原來有兩個候選數,2 和 8。劍魚排除了 2,只剩 8,這就是一個唯一候選數:在 R6C8 填入 8。

使用劍魚之後,R6C8 只剩候選數 8,所以在那裡填入 8。16295432897282978629143543582976291721345813696483491238575895891937612884589162735927894283459249278592791628989716452893C1R1C2R2C3R3C4R4C5R5C6R6C7R7C8R8C9R9
排除候選數之後,R6C8 只剩 8 這一個候選數。

試試 Sudoku Royale

你熟悉的經典數獨,沒有廣告,沒有彈窗,沒有雜亂。每天一道全新的每日挑戰,不計時的無限練習,還有技巧特訓。想要刺激時,可以在同一塊棋盤上和 2 至 18 名玩家競速。

免費下載 Sudoku Royale(iOS)

按直行找的劍魚

把橫列和直行對調,劍魚同樣成立。如果一個數字在三直行裡每直行都只有兩個或三個可填的格子,而且這些格子全都在同樣的三橫列裡,就可以把這個數字從這三橫列的其他所有格子中排除。

邏輯完全一樣,只是轉了 90 度。找到結構的那些線保留候選數,要排除的是與它們交叉的線上的候選數。兩個方向都要查,因為有的題目只出現其中一種。

怎麼找劍魚

劍魚比X翼更難找,因為要對上三橫列,而不是兩橫列。你需要寫全筆記 (英文),然後按下面的順序找:

  1. 先試更簡單的技巧。 唯一數、數對、指向數對和X翼更容易找到,也能解決大多數格子。
  2. 一次只看一個數字。 先挑棋盤上剩餘候選數少的數字,候選數越少,要檢查的橫列越少。
  3. 記下有用的橫列。 對每一橫列,數一數這個數字可填的格子。留下有兩個或三個格子的橫列,並記住它們的直行。
  4. 三橫列組合。 如果其中三橫列合起來恰好用了三直行,就有了劍魚。找不到的話,用直行再找一遍。
  5. 排除候選數。 把這個數字從三條交叉線的其他格子裡排除,然後重新找隱性唯一數和唯一候選數。

常見錯誤

  • 是四直行而不是三直行。 如果三橫列的格子用了四直行,這個結構就不是劍魚,劍魚的規則什麼也排除不了。排除候選數之前請再數一遍直行數。
  • 排除的方向反了。 在橫列裡找到的結構,要在直行裡排除候選數。那三橫列保留全部候選數。
  • 筆記不完整。 少寫一個候選數,就會讓一橫列看起來正好落在這三直行裡,其實它在三直行之外還有一個格子。
  • 以為每次都能排除到候選數。 只有這三直行裡還有其他帶這個數字的格子,劍魚才有用。例題裡第 5 直行就沒有。

什麼時候找劍魚,以及接下來學什麼

劍魚比X翼少見得多,因為要同時對上三橫列三直行。很多困難題目根本用不到它。只有在困難或專家級題目裡卡住,而更簡單的技巧都沒有進展時再找它。真的需要它時,它排除的候選數往往直接給出下一個數字,就像例題那樣。

在 Dojo 裡練習劍魚

Sudoku Royale 的 Dojo 為這項技巧準備了簡短的課程和特訓:一盤接一盤,下一步正是用到它。你的紀錄是連續答對的最快一次,還能和其他玩家比一比。在 iPhone 上開啟劍魚特訓,或閱讀Dojo 怎麼玩 (英文)。

免費下載 Sudoku Royale(iOS)

學完劍魚之後,可以學XY翼,它把三個各有兩個候選數的格子連起來,還有簡單著色,它沿著一串格子追蹤同一個數字。帶鰭X翼 (英文)告訴你,當一條魚多出一個格子時,還能排除什麼。想了解全貌,請看數獨技巧完整列表 (英文)。

常見問題

數獨裡的劍魚是什麼?

劍魚是針對一個數字的結構。這個數字在三橫列裡每橫列都只有兩個或三個可填的格子,而且這些格子全都在同樣的三直行裡。這時可以把這個數字從這三直行的其他所有格子中排除。把橫列和直行對調,規則同樣成立。

劍魚和X翼有什麼差別?

X翼用兩橫列兩直行,劍魚用三橫列三直行。邏輯是一樣的,但劍魚更少見,也更難看出來。

三橫列裡每一橫列都要在三直行裡都有這個數字嗎?

不用。每一橫列只需要在這三直行中的兩直行或三直行裡有這個數字。規則只要求三橫列所有的格子合起來恰好用了三直行。

劍魚會排除哪些候選數?

它從三條交叉線上、結構以外的格子裡排除這個數字。如果結構是在三橫列裡找到的,就從那三直行的其他格子裡排除;如果是在三直行裡找到的,就從那三橫列的其他格子裡排除。

劍魚這個結構常見嗎?

比X翼少見得多。簡單和中等的題目幾乎用不到,只有一部分困難和專家級題目需要它。

試試 Sudoku Royale

在 App Store 免費下載
Sudoku Royale:經典數獨,沒有廣告,想玩時還有即時對戰免費下載