游戏 · 数独

数独技巧十九:反证候选排除,让矛盾帮你划掉不可能

当常规技巧暂时没有下一步时,怎样以可解释的反证检查安全删除一个候选数,并避免把试错伪装成直觉?

03.05.01.00.00235 分钟阅读·2026年8月22日
文章目录

反证不是随便猜,而是验证“这个候选会不会把棋盘带进死路”

有些数独走到中后段,显性唯一数、锁定候选、子集、鱼形与翼形都暂时没有出现。此时可以挑选一个候选较少的空格,暂时假设其中一个候选成立,再继续检查行、列与九宫格是否仍保有合法可能性。

如果这个假设会令某一格没有候选、某一行/列/宫失去某个必须出现的数字,或造成重复冲突,便出现了矛盾。原假设不可能成立,因此可以安全删去这个候选。强制链(Forcing Chain)的核心正是把假设推到矛盾或必然结论,再得到可验证的排除。[1]

森知数独怎样使用反证候选排除
  1. 先按候选,让棋盘补齐所有合法候选;你已经写下的合法笔记会被保留。
  2. 教我下一步。系统会先尝试基础与中高级的可见模式;只有这些都无法推导时,才考虑反证候选排除。
  3. 若系统显示某格的某个候选可排除,意思不是它已经偷看标准答案,而是该候选经过完整约束检查会走到无解矛盾。
  4. 应用这一步排除后,该候选会从笔记中移除;再按教学,就能继续寻找新的正常技巧。

    一个简化的思考例子

    假设 r4c7 只剩 {2, 8}。先临时放入 2;如果继续检查后发现第 4 行再也没有位置能放数字 6,便说明“r4c7 = 2”不成立。因此 r4c7 只能保留 8。重点在于:你不是因为感觉 8 比较像答案才填它,而是已经证明 2 会破坏数独规则。

    反证步骤应该留下清楚的原因:哪一个候选被暂时假设、它导致哪一种矛盾、所以能删除哪一个候选。

    何时适合用,何时先停一下

    反证候选排除适合在已经检查完简单技巧、且想继续学习逻辑链时使用。它比直接猜一个数字更可追溯,但仍属于中高级的后备方法。初学者应优先练熟唯一数、宫/行/列排除、裸组与锁定候选;这些技巧更短、更容易在纸上复核。

    复杂链式技巧的范围很广,包含强/弱链接、强制链与强制网;不同题目未必需要同一种路线,且技巧体系并没有一个绝对完整的清单。[2]

    延伸练习

    回到会员专区的 Step by Step 数独,先用“教我下一步”观察系统是否能找到更直观的模式;只有教学卡明确显示反证候选排除时,再把它当作最后的逻辑检查。你也可以继续阅读 Remote Pair 与 XY-Chain,认识链式推理怎样从双候选关系展开。

    参考资料
    1. HoDoKu:Last Resort(Forcing Chain、Forcing Net 与 Brute Force)
    2. SudokuWiki:Strategy Families

暂无讨论。你可以留下一个问题,帮助下一位读者继续思考。