Sudoku 获取应用

数独技巧 · 极限

数独中的ALS-XZ

ALS-XZ通过一个受限公共候选数X把两个几乎锁定集(候选数比格子数多一个的格组)连起来,X只能填进其中一个集合。这就逼出第二个共有的候选数Z必须进入另一个集合,于是能看到两个集合中所有Z的外部格子都可以清除Z。

原理

由受限公共候选数相连的两个几乎锁定集,会把它们共用的另一个候选数逼入其中至少一个集合,所以这个候选数可以从两个集合之外、能看到该候选数在两个集合中所有位置的任何格子里移除。

怎么找到它

难的部分是看出这两个集合,逻辑本身并不难。

  • 几乎锁定集是同一组里带一个多余候选数的任意一组格子,最小的就是一个双值格。
  • 两个集合,两个共有候选数:X必须受限,也就是一个集合里每个X都看得到另一个集合里的每个X;Z不能受限。
  • 从两个集合之外、能看到两边所有Z的格子中清除Z。

需要先学

实例

这些是应用自带的课程棋盘,可以像提示一样一步步看下去。

模式答案关联阻挡排除
Step 1 of 3
ALS-XZ: the pattern as the app draws it during a hint.
  1. 1

    看第一个集合 。这 2 个格子全都在同一行、同一列或同一个宫里,它们合起来一共有 3 个不同的候选数,比格子数多一个。这称为“几乎锁定集”(ALS)。

  2. 2

    现在看第二个集合 。这 3 个格子也全都在同一行、同一列或同一个宫里,它们合起来一共有 4 个不同的候选数,比格子数多一个,所以它们也构成一个 ALS。两个集合共用候选数 3 作为受限公共候选数(RCC):一个集合中每一个含有候选数 3 的格子都能看到另一个集合中每一个这样的格子,因此数字 3 最多只能填入两个集合中的一个,绝不会同时在两个里。

  3. 3

    两个集合 都含有候选数 5。既然数字 3 最多只能填入一个集合,至少有一个集合不会用到 3。一个不用 3 的集合,剩下的不同候选数恰好和格子数一样多,所以它必须把每一个(包括 5)都填入其内某处。因此,5 至少会填入两个集合中的一个。两个集合之外的任何格子,只要能看到两个集合中所有含有候选数 5 的格子,就可以移除候选数 5。这里 X 是 3,Z 是 5。