双数链(长度4+)

XY-Chain (Length 4+)

★★★★★ 宗师

概要:双数链(长度4+)是 XY-Chain 的延伸,由四个或更多双候选格依次串联而成。随着链的延伸,端点之间的几何距离可以更远,消去目标更难用其他技法发现。掌握长链需要系统的节点搜索策略和清晰的链式追踪能力。

什么是双数链(长度4+)?

双数链(长度4+)是 XY-Chain 的延伸形式,由四个或更多双候选格(Bivalue Cell)依次串联而成。每个相邻节点共享一个候选数,且处于同一行/列/宫。

链的一般结构(以长度4为例):

A\{a,b\} — B\{b,c\} — C\{c,d\} — D\{d,e\}
  • A—B 共享候选数 b(同单元)
  • B—C 共享候选数 c(同单元)
  • C—D 共享候选数 d(同单元)
  • 端点候选数:A 的外侧为 a,D 的外侧为 e

a = e,则能同时看到 A 和 D 的格子可以删去候选数 a。

为何长链更强大?

  • 链越长,端点的几何位置可以相距越远,消去目标越难被其他技法发现。
  • 长链可以绕过障碍,连接棋盘上看似无关的区域。
  • 但长链也更难手工追踪,需要系统化的搜索策略。

解题步骤

  1. 标注所有双候选格:找出盘面上所有只含两个候选数的格子,用特殊标记区分。
  2. 建立双候选格邻接图:对于每个双候选格,记录它与哪些其他双候选格共享候选数且同处一单元。
  3. 选定起点 A:选一个双候选格,设其候选数为 {a, b},目标是找到外侧候选数也为 a 的终点。
  4. 沿链追踪:从 A 出发,通过共享候选数逐步连接下一个节点,记录每步传递的候选数。
  5. 检验终点:当链延伸到某节点 Z,若 Z 的外侧候选数(未被链占用的那个)等于 A 的外侧候选数 a,则链成立。
  6. 寻找消去目标:找所有能同时看到 A 和 Z 的格子,删去其中的候选数 a。
  7. 避免重复节点:链中每个格子只能出现一次。

示例详解

XY-Chain 长度5:候选数3

6 1 9 5 4 7 3 7 3 8 8 1 1 3 6 9 3 5 9 1 5 3
5个双候选格构成链:R2C1{3,8} — R2C6{8,1} — R7C6{1,5} — R7C3{5,9} — R4C3{9,3}。共享候选数依次为8→1→5→9,两端外侧候选数均为3。R4C1同时看到R2C1(同列)和R4C3(同行),候选数3可删除。

以长度为5的双数链为例(5个节点,4段链):

节点候选数共享连接下一节点
R2C1(A){3, 8}8→ R2C6
R2C6(B){8, 1}1→ R7C6
R7C6(C){1, 5}5→ R7C3
R7C3(D){5, 9}9→ R4C3
R4C3(E){9, 3}终点

链:R2C1{3,8} — R2C6{8,1} — R7C6{1,5} — R7C3{5,9} — R4C3{9,3}

  • A 的外侧候选数:3;E 的外侧候选数:3 → 相等!

推理:

  • 若 R2C1 ≠ 3 → R2C1 = 8 → R2C6 = 1 → R7C6 = 5 → R7C3 = 9 → R4C3 = 3
  • 若 R2C1 = 3 → A 已为真

两种情况:R2C1 = 3 或 R4C3 = 3(至少一个为真)。

消去:找同时能看到 R2C1(第2行、第1列、第1宫)和 R4C3(第4行、第3列、第1宫)的格子:

  • R4C1:第1列能看到 R2C1,第4行能看到 R4C3 → R4C1 中的候选数 3 可删除

XY-Chain 长度4:候选数6

5 3 9 7 2 1 3 8 6 2 2 7 3 6 8 4 6 7 4 6
4个双候选格构成链:R1C4{6,2} — R1C9{2,7} — R5C9{7,4} — R5C4{4,6}。共享候选数依次为2→7→4,两端外侧候选数均为6。R3C4(同列看R1C4,同宫看R5C4)的候选数6可删除。

实用技巧

  • 双候选格密集时效果最佳:解题中后期,双候选格增多,长链出现的概率显著提升。
  • 系统BFS/DFS搜索:手工解题时,可以用广度优先思维,从起点逐层扩展可达节点,直到找到匹配的外侧候选数。
  • 记录链的候选数序列:追踪每步传递的候选数(如 3→8→1→5→9→3),序列首尾相同即成立。
  • 链的可逆性:从 A 到 Z 和从 Z 到 A 的推理等价,可以双向搜索提高效率。
  • 与 AIC 的关系:若链中某个节点不是双候选格(含两个以上候选数),则需切换到 AIC 框架处理。

与其他技法的关系

  • 前置技法双数链(长度3) — 长度3是双数链的最简单形式,即 XY-Wing。
  • 通用框架交替推理链(AIC) — 双数链是 AIC 的特例,AIC 允许节点包含两个以上候选数,适用范围更广。
  • 互补工具单数链(长度7) — 当所有节点都含同一候选数时,使用单数链;候选数跨格变化时,使用双数链。

常见问题

Q:双数链的链长有上限吗?

A:理论上没有上限,但实际上超过7-8个节点的链极为罕见,且手工追踪难度极高。在竞赛和实际解题中,长度4-6的链最为常见且实用。更长的链通常意味着存在更简单的其他解法。

Q:如果找不到匹配的端点(a ≠ e)怎么办?

A:有两种策略:(1) 从不同起点重新尝试,(2) 考虑将链的某段切换为强链(即允许某节点含两个以上候选数),转入 AIC 框架。双数链要求每个节点严格是双候选格,AIC 则无此限制。

在爱九宫数独中练习

打开爱九宫数独 App → 学习 → 大师技法 → 双数链,选择”长度4+“专项训练。建议用不同颜色标记候选数传递路径,每完成一段链就验证一次逻辑,确保每步传递正确后再继续延伸。