grid_on

Sudoku Clean

技巧文檔 / 刺身魚

刺身魚

> 前置知識:[X翼(二階魚)](learning://x_wing) · [帶鰭X翼](learning://finned_x_wing)

高階

刺身魚

前置知識:X翼(二階魚) · 帶鰭X翼

描述

刺身魚(也叫“退化魚”)是一種“刪候選”的魚類技巧。你可以把它理解成: 帶鰭魚的“更不完整版本”——綠色的魚身還沒完全形成標準魚,但因為魚鰭(黃色)都落在同一宮裏,我們仍然能推出一小塊穩定的刪數結論。

它通常有三個關鍵點:

  • 魚身(綠):看起來像要組成一條標準魚,但會缺一角/缺一條覆蓋線
  • 魚鰭(黃):多出來的同數字候選,而且必須都在同一宮
  • 刪數(紅):多發生在“魚鰭所在宮”裏(範圍比標準魚更小)

詳解

刺身魚 詳解示例

先看上圖:目標數字是 3

  • 綠色魚身候選在 r3c3、r3c6、r7c6
  • 黃色魚鰭在 r8c3、r9c3(都在同一宮)
  • 紅色要刪除的是 r7c1 裏的候選數字 3

為什麼 r7c1 裏的候選數字 3 能刪?我們做一個很短的反證:

  1. 假設 r7c1 = 3(紅色為真)
    因為 r7c1 和魚鰭 r8c3、r9c3 在同一宮,所以這兩個魚鰭裏的 3 都必須為假
  2. 再看第 3 列:在上圖裏,候選數字 3 只剩下 r3c3、r8c3、r9c3
    現在魚鰭 r8c3、r9c3 都被排除了,所以 r3c3 只能是 3
  3. r3c3 = 3 會讓 r3c6 不能是 3(同一行衝突)。
    而第 6 列裏,候選數字 3 只出現在 r3c6、r7c6 兩處,所以 r3c6 不是 3 ⇒ r7c6 必須是 3
  4. 這就出現矛盾了:我們一開始假設 r7c1 = 3,同時又被迫得到 r7c6 = 3,
    同一行出現兩個 3 不可能成立

因此假設不成立:r7c1 裏的候選數字 3 可以刪除


例子

下面這張圖是另一個刺身魚的例子,你可以直接對照“魚身(綠)/ 魚鰭(黃)/ 刪數(紅)”來觀察:

刺身魚 示例

刺身劍魚、刺身水母也是一樣道理:只是魚的階數更高、漁網更大,但核心仍然是“魚身不完整 + 魚鰭同宮 ⇒ 小範圍刪數”。


如何尋找刺身魚?

一句話:先看到“缺一角的魚身”,再確認魚鰭同宮,最後只在魚鰭所在宮裏找刪數。

在遊戲裏你可以按這個順序找:

  1. 先選一個數字 d
  2. 像找標準魚一樣,找出“看起來能對齊”的魚身(綠),但它會明顯缺一角/缺一條覆蓋線
  3. 找到多出來的同數字候選(黃),並確認所有魚鰭都落在同一宮
  4. 刪數優先看“魚鰭所在宮”裏的候選 d(通常就在紅色標註的位置)