指向对技巧 - 利用宫格与行列的交叉关系
指向对是指当宫格内某个数字的候选位置全部排列在同一行或列时,可以从该行/列的其他宫格中排除该数字的技巧。本文讲解这一结合宫格与行列约束的中级技巧。
指向对的原理
考虑某个宫格内,某个数字(例如 5)的候选位置全部在同一行的情况。5 必定会填入该宫格的某个位置,而候选位置全在同一行,因此 5 一定在这一行的该宫格内。由此,同一行中属于其他宫格的格子可以从候选数中排除 5。这就是指向对(Pointing Pair)。候选位置为 2 个时称为 Pair,3 个时称为 Triple。
与区块排除的区别
容易与指向对混淆的是区块排除(Box/Line Reduction)。指向对是「宫格 → 行/列」方向的候选排除。而区块排除是「行/列 → 宫格」的反方向。当某行中某个数字的候选位置全部在同一宫格内时,该宫格中不在该行的其他格子可以排除该数字。方向相反,但逻辑依据相同,都是「约束的交叉」。
高效的发现方法
发现指向对需要检查每个宫格中各数字的候选位置。如果候选位置限定在 2-3 个格子,且它们全部排列在同一行或列,指向对就成立。实际操作中,宫格内空格为 4-5 个的宫格是最佳目标。空格太多候选容易分散,太少则候选本身就已经很有限了。
在 Hard 级别中的重要性
Hard 难度的谜题中,仅靠显性单数和隐性单数必然会遇到瓶颈。指向对和数对是突破这道墙的主要技巧。特别是指向对,只要笔记管理准确就比较容易发现,可以说是攻克 Hard 级别性价比最高的技巧。
区块候选数引发的确定连锁
用实例看区块候选数
用一个具体例子来巩固理解。考虑左上宫。假设在该宫的空格中,数字 3 只能填入上层的两格,而这两格都属于第 1 行。由于 3 必落在该宫某处,于是 3 便确定落在此宫的第 1 行内。这样,就可以从第 1 行所属的另外两个宫的格子中删去 3 这个候选。此处需要注意:若该宫中 3 的候选跨越了上层与中层,这一逻辑便不成立。候选完全集中于同一行 (或同一列) 是成立的绝对条件;只要有一个候选落在别的行,就无法删减。
发现区块候选数的诀窍
要高效搜索区块候选数,应养成以宫为单位、逐个数字查看候选位置的习惯。理想目标是仍剩约四到五个空格的宫。空格太多时,候选会四处分散,难以在某行或某列对齐;空格太少时,候选本就有限,往往用别的技巧即可解决。保持笔记准确同样是前提。漏写候选,会让你没注意到它们其实已在同一行对齐,从而错过区块候选数;反之忘删候选,会让本未对齐的看起来已对齐,导致错误的删减。以宫为单位、逐个数字耐心追查的扫描,终究是最可靠的发现之法。