原理说明
区块排除(宫→线)的原理是:如果某一个宫内,某数字的所有候选位置都集中在同一行或同一列上,那么该数字不可能出现在该行/列的其他宫中。因此,可以从该行/列在其他宫中的格子里删除这个候选数。
同宫候选数集中到一条线,排除该线其它格。
区块排除(宫→线)的原理是:如果某一个宫内,某数字的所有候选位置都集中在同一行或同一列上,那么该数字不可能出现在该行/列的其他宫中。因此,可以从该行/列在其他宫中的格子里删除这个候选数。
区块排除(宫→线)在候选数标注较密集时非常有效,尤其适用于候选数集中分布的情况。它是从入门到进阶的重要过渡策略,能显著减少候选数数量。
区块排除(宫→线)的核心逻辑是"宫内约束传递到行/列"。与线→宫方向相反,但推理方式对称:
已知条件:
逐步推导如下:
因此,该行/列在该宫之外的其它格子里的候选数 Z 都可以安全删除。
某宫内候选数 Z 全部集中在同一行(即都落在该宫的某一行 3 个格子中)。此时该行在其它两个宫中的格子里的 Z 可被删除。这是最常见的形态。
某宫内候选数 Z 全部集中在同一列。此时该列在其它两个宫中的格子里的 Z 可被删除。与宫→行完全对称,只是方向旋转了 90 度。
当宫内 Z 恰好只有 2 个候选格且都在同一行/列时,结构最清晰,被称为"声明型"——该宫"声明"了对这一行/列上 Z 的占有。这种形态删数效果最明显。
误区一:候选格跨行/列
宫→线要求该宫内 Z 的所有候选格全部位于同一行(或同一列)。只要有一个候选格在另一行/列,集中条件就不成立,不能删数。务必确认"全部"而非"大部分"。
误区二:删错位置
删除的是该行/列中在该宫之外的格子里的 Z,而不是该宫内其它行/列的 Z。方向搞反会变成线→宫的删法,导致错误排除。记住:删除范围是"线内、宫外"。
误区三:与线→宫混淆
宫→线是从"宫内集中"推导"行/列排除";线→宫是从"行/列集中"推导"宫内排除"。两者方向相反,删数目标也不同,使用前先想清楚是"谁锁定了谁"。
误区四:忽略候选数完整性
本策略依赖候选数的完整标注。如果候选数标注不全(漏标了某些格子的 Z),可能会误判"集中"成立,从而错误删数。务必先确保候选数标注完整。
区块排除(宫→线)与区块排除(线→宫)互为反向操作,共同构成完整的区块排除策略(Box Line Reduction / Intersection)。它与宫隐性单数的思路有相似之处——都是基于"某数字在某区域被锁定"的推理,但宫→线将锁定结果传递到行/列上排除其它候选数,而宫隐性单数则直接确定答案。它是从入门到进阶的重要过渡策略。
策略家族关系: