Sudoku Clean 素数独 logo

Sudoku Clean 素数独

技巧文档 / 均衡数对排除(APE)

极难技巧

均衡数对排除(APE)

建议先熟悉:标注候选数 · 数对和数组 · ALS-XZ

APE 是 Aligned Pair Exclusion 的缩写。它不先证明某个数字必须出现,而是选择两个蓝色格子,把它们的候选两两搭配,再逐项排除不可能的组合。

如果蓝格 A 的某个候选,与蓝格 B 的每一个候选搭配都会产生矛盾,那么这个候选就不可能留在 A 中。

APE 的难点不是最后的删数,而是不能漏掉任何一种搭配。


1. 先回顾 ALS

ALS(Almost Locked Set,近锁定集)是同一行、列或宫内的 N 个格子,候选并集恰好有 N+1 种数字

它只比锁定集多一种数字。如果从整组中排除一种候选,就会变成 N 格 N 数;如果同时排除两种不同的候选,就只剩 N−1 种数字填 N 个格子,这是不可能的。

APE 正是利用后一条结论来排除蓝格搭配。

2. 什么样的 ALS 能排除一个搭配?

假设蓝格 A 取 p,蓝格 B 取另一个数字 q。如果存在一组黄色 ALS,并且:

  1. pq 都是这组 ALS 的候选;
  2. 蓝格 A 能看见 ALS 内 p 的每一个候选位置;
  3. 蓝格 B 能看见 ALS 内 q 的每一个候选位置;

那么 A 中的 p 会排除 ALS 内所有 p,B 中的 q 会排除 ALS 内所有 q。这组 ALS 一次失去两个不同数字,只剩 N−1 种数字填 N 个格子,因此组合 (p, q) 不可能成立。

ALS 中只含其它数字的格子不必同时被两个蓝格看见。这里也不要求 pq 是 RCC。APE 检查的是“两个蓝格同时这样取值会不会让 ALS 无法填满”,而不是在两组 ALS 之间建立连接。

3. Type 1:两个蓝格互相可见

均衡数对排除 Type 1

Type 1 的两个蓝格位于同一行、列或宫,因此它们不能填相同数字。

检查一个候选时,有两种排除组合的方法:

  • (x, x):两个蓝格互相可见,直接违反数独区域不能重复的规则;
  • (p, q)p ≠ q:A 看见 ALS 内全部 p、B 看见全部 q,从而排除该搭配。

因此,同数字冲突也是 Type 1 证明的一部分,不需要另外寻找 ALS。

4. Type 2:两个蓝格互不可见

均衡数对排除 Type 2

Type 2 的两个蓝格不在同一行、列或宫。它们可以同时填相同数字,所以 (x, x) 必须保留为可能组合。

这条区别非常重要:如果两格都含候选 x,就不能只因为其它搭配都被 ALS 排除而删除 x,因为“两格都填 x”仍可能成立。Type 2 的每一个被排除搭配都必须是两个不同数字,并且有真实 ALS 提供矛盾。

5. 怎样得出删数?

假设蓝格 A 的候选是 1、4,蓝格 B 的候选是 1、6、8。现在检查 A 中的 4

A 的取值 B 的取值 为什么不可能
4 1 黄色 ALS P 会同时失去 4、1
4 6 黄色 ALS Q 会同时失去 4、6
4 8 黄色 ALS R 会同时失去 4、8

B 已经没有任何候选能与 A=4 共存,所以可以从 A 删除 4。三个组合可以由同一组 ALS 排除,也可以分别由不同 ALS 排除;关键是每一个组合都有完整反证。

同样的检查也会反向进行:固定 B 的某个候选,再与 A 的全部候选搭配。只要全部被排除,就能从 B 删除它。

6. 怎样阅读游戏中的提示?

  • 蓝色格子:正在逐一检查搭配的两个基准格;
  • 绿色候选:两个蓝格当前拥有的候选;
  • 黄色格子:真正用于排除某些搭配的 ALS;
  • 黄色候选:在反证中会被蓝格取值同时挤掉的两个数字;
  • 红色候选:与另一蓝格所有候选搭配都失败,因此可以删除。

提示文字会列出红色候选对应的每一种失败搭配。阅读时先固定红色候选,再逐项确认另一蓝格的候选是否全部出现;不要只看其中一两个矛盾就跳到结论。

7. 常见误区

只排除了一个组合,就可以删数?

不可以。目标候选必须与另一蓝格的每一个候选搭配都失败。只要漏下一种可行搭配,就不能删除。

蓝格只看见 ALS 中一部分格子也行?

不行。取 p 的蓝格必须看见 ALS 内 p 的全部位置,取 q 的蓝格也必须看见 q 的全部位置;但它们不必看见 ALS 中只含其它数字的格子。

任意 N 格 N+1 数都算 ALS?

不算。这 N 个格子必须同处一个行、列或宫。否则不能保证它们由 N 个不同数字填满。

Type 2 的相同数字也算冲突?

不算。两个蓝格互不可见时,同数字可以同时成立;把 (x, x) 当成冲突会产生错误删数。

APE 为什么有时和数对、翼或 ALS-XZ 得到相同删数?

高级结构可能与更简单技巧重叠。技巧列表可以同时保留这些解释,但默认仍会优先显示更简单、也更容易观察的技巧。APE 的身份来自“完整枚举蓝格搭配并逐项反证”,而不是只看最后删了哪个候选。

8. 实战检查顺序

  1. 确认候选数已经完整;
  2. 找到两个蓝格,并判断它们属于 Type 1 还是 Type 2;
  3. 固定准备删除的红色候选;
  4. 将它与另一蓝格的每一个候选分别配对;
  5. 同数字组合只在 Type 1 中直接冲突;
  6. 对每个不同数字组合,确认黄色格严格满足 N 格 N+1 数;
  7. 确认两个蓝格分别看见 ALS 内对应数字的全部位置;
  8. 所有搭配都失败后,才执行删数。

把 APE 记成一句话:固定一个候选,穷尽另一格的所有选择;条条路都走不通,这个候选才真正被排除。