空矩形
前置技巧: 双线风筝
概述
空矩形利用某个宫中的一个数字:该数字在这个宫中的所有可填位置都位于宫内相交的某一行和某一列上。再结合宫外的一条强链,就能从一个单元格中删除这个数字。
原理
假设某个数字在一个宫中的所有可填位置都位于该宫相交的某一行和某一列上:不在这一行和这一列上的四个单元格,也就是那个「空矩形」,都不能是它。现在找一个不穿过这个宫的列,该数字在其中只能填入两个单元格:一个位于这个宫的那一行上,另一个在这个宫所占的各行之外。检查另一端所在的行与这个宫的那一列相交的单元格。如果远端是该数字,这个单元格与远端同行。如果近端是该数字,宫的那一行就被占了,所以这个宫的该数字位于宫的那一列上,而这个单元格也在这一列。无论哪种情况,这个单元格都不能是该数字。把行和列对调也同样成立。
何时使用
当某个宫中一个数字只剩少数几个位置,且都沿着宫内的一行和一列分布,同时该数字在宫外的某行或某列上有一条强链时,就找找空矩形。
如何识别
对每个数字,找出它在宫内的所有可填位置都位于该宫某一行和某一列上的宫。然后找一个不穿过这个宫的列(或行),该数字在其中恰好有两个位置:一个位于这个宫的那一行(或列)上,另一个在这个宫所占的各行(或各列)之外。把这个数字从链的另一端与宫的那一列(或行)对齐的单元格中删除。
图示示例
第 1 步,共 9 步
一个宫,一行,一列
空矩形针对一个数字。在某个宫中,该数字的所有可填位置都位于宫内相交的某一行和某一列上。再加上宫外的一条强链,就能从一个单元格中删除这个数字。
已被前面的技巧排除的候选数不再显示。
练习
你的目标:填入 1 个高亮的单元格。先选择一个单元格,再选一个数字。
这里藏着一个空矩形。找出一个宫,其中某个数字的可填位置都落在一行和一列上,再找到强链,然后删除候选数并填入唯一候选数。已被前面的技巧排除的候选数不再显示。
在真正的游戏中运用
在困难题中,你会需要这类技巧。
玩一道困难题