技巧文檔 / XY鏈
XY鏈
> 前置知識:[鏈的基礎](learning://chains)
高階
XY鏈
前置知識:鏈的基礎
1. 描述
XY鏈(也常寫作 XY-Chain)是一種“只用雙值格”的鏈技巧。
它和 X鏈 不同點在於:
- X鏈:只盯一個數字 d,鏈上的節點都是 “d 的候選”
- XY鏈:只盯“雙值格”,鏈會在不同數字之間來回切換
直覺上你可以把它理解成一句話:
雙值格里兩數必有其一,再配合“同行/同列/同宮同數互斥”,就能把推理一路傳下去。
當鏈的兩端碰巧是同一個數字(例如都是候選 2),那麼任何一個能同時看見兩端的候選 2,都可以被刪除。
2. 詳解

先看上圖:藍色格子是鏈的兩端,目標數字是 2。
- 起點:r1c7 中的候選 2
- 終點:r8c6 中的候選 2
- 刪數點:r8c7 中的候選 2(紅色)
為什麼 r8c7 的 2 能刪?我們用一個很短的反證就夠了:
- 假設紅色候選 r8c7 = 2 為真
- 因為 r8c7 能同時看見兩端點:
- 同一列衝突 ⇒ r1c7 不能是 2
- 同一行衝突 ⇒ r8c6 不能是 2
- 但注意:這條鏈把 r1c7 的 2 和 r8c6 的 2 連接起來了
在“只由雙值格組成”的鏈裏,一端為假會把真假一路傳導,最終迫使另一端為真
⇒ 所以 r1c7 不是 2 會推出 r8c6 必須是 2 - 這就和第 2 步的結論“r8c6 不能是 2”直接衝突(矛盾)
所以假設不成立:r8c7 不可能是 2,候選數字 2 可以刪除。
3. 例子
下面兩張圖是其它 XY鏈 的例子。你可以先不急着逐段推理,先學會抓住三個關鍵點:
- 藍色端點(鏈的兩端)
- 一條由雙值格串起來的路徑
- 紅色刪數點(通常能同時看見兩端點)


4. 如何尋找 XY鏈?
一句話:先找一串能首尾相接的雙值格,再看鏈的兩端是否落在同一個數字 d 上;若有某個候選 d 能同時看見兩端,就可以刪掉它。
在遊戲裏你可以按這個順序找:
- 先從一個雙值格開始(只有 2 個候選)
- 用“同數互斥”(同一行/列/宮)把鏈接到下一個雙值格
- 在每個雙值格里,用“二選一必有其一”(格內強關係)把推理繼續傳下去
- 如果最後能回到同一個數字 d,並出現一個候選 d 同時看見鏈兩端,那它就是常見的刪數點