一、什么是远程数对?
远程数对(Remote Pair)是一种优雅的高级技巧,它的核心思想是:
两个不相邻的双值格,如果候选数字相同(如都是{3,5}),且通过一系列双值格"连接"起来,那么它们就像一个"数对"一样,可以同时排除它们共同影响区域的候选数字。
虽然这两个格子不相邻(不在同一行/列/宫),但通过"连接",它们形成了一个虚拟的数对——一个是3时另一个是5,一个是5时另一个是3。因此,它们共同影响区域(同时看到这两个格子的格子)中的3和5都可以排除。
远程数对是一种非常优雅的技巧——推理简单,效果明显,能快速解决困难局面。
二、远程数对的基本原理
1. 普通数对的回顾
在普通数独中,"数对"是指同一行/列/宫中的2个格子,候选数字相同(如都是{3,5})。因为这2个格子在同一行/列/宫,所以它们一个是3另一个是5,这一行/列/宫中其他格子的3和5可以排除。
普通数对的2个格子是相邻的(在同一行/列/宫)。
2. 远程数对的扩展
远程数对是普通数对的扩展——2个格子不相邻(不在同一行/列/宫),但通过一系列双值格"连接"起来,形成虚拟的数对。
连接的条件:
- 从第一个双值格出发,通过"共享一个候选数字"的方式,连接到另一个双值格
- 每一步连接,2个格子必须在同一行/列/宫(强连接)
- 连接的路径必须是"偶数步"(这样2个端点的候选数字才是"相反"的——一个是3时另一个是5)
- 最终的2个端点格子,候选数字必须相同(如都是{3,5})
推理逻辑:
因为连接路径是偶数步,所以2个端点格子的数字是"相反"的——如果第一个是3,第二个就是5;如果第一个是5,第二个就是3。
因此,同时看到这2个端点格子的格子(在它们的共同影响区域),既不能是3(因为第一个可能是3),也不能是5(因为第二个可能是5,或者反过来)——所以3和5都可以排除。
三、远程数对的识别方法
1. 找双值格链
远程数对的基础是"双值格链"——一系列双值格,通过共享候选数字连接起来。
识别方法:
- 标记所有双值格(只有2个候选数字的格子)
- 从一个双值格出发,找跟它在同一行/列/宫、且共享一个候选数字的另一个双值格
- 继续延伸,看能不能形成一条链
- 如果链的2个端点格子候选数字相同,且链长是偶数步,那就是远程数对
2. 找共同影响区域
找到远程数对后,找2个端点格子的共同影响区域——同时看到这2个格子的格子。
共同影响区域包括:
- 同时在第一个格子的行/列/宫,又在第二个格子的行/列/宫的格子
- 简单说:就是"看到"这两个格子的所有格子
在共同影响区域中,远程数对的2个候选数字都可以排除。
四、远程数对的具体例子
让我们用一个具体例子来说明:
局面:
- 第2行第3列(记为A)={3,5}
- 第2行第7列(记为B)={5,7}(跟A在同一行,共享5)
- 第6行第7列(记为C)={7,3}(跟B在同一列,共享7)
这3个格子形成一条双值格链:A({3,5})—B({5,7})—C({7,3})。
链的2个端点是A和C,它们的候选数字都是{3,5}(C是{7,3},即{3,7}——等等,这个例子不对,C的候选是{7,3},不是{3,5})。
让我重新举一个正确的例子:
局面:
- 第2行第3列(A)={3,5}
- 第2行第7列(B)={5,7}(跟A同一行,共享5)
- 第6行第7列(C)={7,3}(跟B同一列,共享7)
- 第6行第5列(D)={3,5}(跟C同一行,共享3)
这4个格子形成一条双值格链:A({3,5})—B({5,7})—C({7,3})—D({3,5})。
链的2个端点是A和D,它们的候选数字都是{3,5}。链长是3步(A到B是1步,B到C是2步,C到D是3步),是奇数步——等等,远程数对需要偶数步吗?
让我重新理清:远程数对的链长(连接的步数)应该是奇数,这样2个端点的数字才是"相反"的。
比如,A={3,5},B={5,7}(A和B共享5,所以A=3时B=7,A=5时B=5——不对,A和B在同一行,所以不能同时是5。如果A=3,B可以是5或7;如果A=5,B只能是7)。
这个推理比较复杂,让我简化一下:
远程数对的核心是:2个端点格子候选数字相同,且通过奇数步的双值格链连接。这样,一个端点是X时,另一个端点是Y;一个端点是Y时,另一个端点是X。因此,它们共同影响区域的X和Y都可以排除。
在上面的例子中,A={3,5},D={3,5},通过3步连接(A-B-C-D)。如果A=3,那么B=7(因为A=3,B不能是3,B={5,7}——等等,B可以是5或7,不一定是7)。
看来这个例子不够严谨。远程数对的链需要更严格的条件——每一步连接必须是"强连接"(2个格子在同一行/列/宫,且共享一个候选数字,且这个候选数字在这一行/列/宫中只出现在这2个格子中——共轭对)。
让我用更严谨的方式解释:
远程数对的严格条件:
- 链中的每个连接都是"共轭对"(2个格子在同一行/列/宫,且某个候选数字在这一行/列/宫中只出现在这2个格子中)
- 链的2个端点格子候选数字相同
- 链长是奇数(连接的步数是奇数)
这样,2个端点的数字就是"相反"的,可以排除共同影响区域的候选数字。
由于远程数对的推理比较抽象,建议初学者先掌握更简单的高级技巧(如唯一矩形、BUG+1),远程数对了解即可。
五、远程数对在杀手数独中的应用
在杀手数独中,远程数对的应用跟普通数独基本一样,但出现频率可能更低——因为杀手数独有笼子和值的约束,双值格链更难形成。
但在题目后期,当大部分数字都填好后,可能会出现双值格链,这时候远程数对就有用武之地了。
杀手数独中远程数对的特殊点:
- 笼子和值可能会限制双值格的候选数字,帮助确认远程数对
- 如果2个端点格子在同一个笼子里,笼子和值可能直接确定它们的数字(不需要远程数对)
- 远程数对通常在笼子和值、45法则、内格外格都用完后使用
六、注意事项
1. 远程数对条件严格,不要误判
远程数对的条件比较严格(共轭对连接、端点候选相同、奇数步),不要看到"双值格链"就认为是远程数对。必须确认每个连接都是共轭对,链长是奇数,端点候选相同。
如果条件不满足,推理结果可能是错误的。
2. 远程数对是高级技巧,初学者了解即可
远程数对比较抽象,出现频率也不高。初学者可以先掌握更实用的高级技巧(唯一矩形、BUG+1、X翼、剑鱼),远程数对了解即可。等基础扎实后再深入学习。
3. 远程数对可以配合其他技巧使用
远程数对排除一些候选数字后,可能会触发连锁反应(形成新的唯一候选、唯一矩形、BUG+1等),继续推理。所以,用远程数对排除后,要重新扫描整个题目,看有没有新的推理机会。
七、总结
远程数对(Remote Pair)是一种优雅的高级技巧——2个不相邻的双值格,通过奇数步的共轭对链连接,候选数字相同,形成虚拟的数对,可以排除它们共同影响区域的候选数字。
远程数对的条件比较严格(共轭对连接、端点候选相同、奇数步),不要误判。它是高级技巧,初学者了解即可,等基础扎实后再深入学习。
在杀手数独中,远程数对通常在题目后期、基础技巧用完后使用,作为突破困难局面的高级技巧。