数独冲突:找出重复数字,避免删错格子
数独冲突是同一行、列或 3×3 宫出现重复的已填数字。至少要改动这组重复数字中的一个才能恢复有效状态,但仅凭冲突无法判断具体哪个数字抄错或填错了。
推理实例
从左上角读取坐标:r 代表行,c 代表列。小数字表示候选数,描边标出图注讨论的格子。
在求解器中打开本例查看完整的 81 格输入
每行从左到右,逐行从上到下读取。0 表示空格。
223456789456789123789123456234567891567891234891234567345678912678912345912345678追踪一个数字在三个区域中的影响
教学盘面把完整答案中的 r1c1 从 1 改成了 2。我们知道改动历史是因为自己构造了例子;检查别人提供的题目时,仅靠重复数字无法得知这一历史。
受影响的是三个格子,不是六处独立错误。同一格可参与多个冲突,同一对数字也可能同时在行和宫重复。检查器应标出所有相关格子,但不应断言它们全都填错了。
| 区域 | 重复数字 | 位置 |
|---|---|---|
| 第 1 行 | 2 | r1c1 与 r1c2 |
| 第 1 列 | 2 | r1c1 与 r4c1 |
| 左上宫 | 2 | r1c1 与 r1c2 |
对照原题修复盘面
先区分已知数与自己的输入:已知数定义题目,落子应由其推导。落子与正确抄录的已知数冲突时撤销落子;两个已知数冲突时,改动前先核对原题中的两处。
步骤 1. 定位重复数字并说明区域,例如“第 1 列有两个 2”。
步骤 2. 将相关格子与原始纸面或已保存的题目核对。
步骤 3. 修正已核实的抄录错误,或撤销未经证明的玩家输入。
步骤 4. 重新检查整盘。消除一个重复不等于剩余题目一定有解。
没有重复不等于没有错误
错误数字可能不违反眼前的行、列、宫约束,却使整题无法完成。重复数字检查不能发现这种情况,需要搜索完整答案,或者在推理过程中发现矛盾。
反过来,只要出现重复数字,就足以判定不符合标准数独规则,无需搜索全部答案。合理顺序是先查格式,再查直接冲突,最后判断无冲突的题目有零个、一个还是多个解。
候选笔记重复是正常现象
同一行多个空格都可以写候选数 2。它们表示可能性,不是同时填入的答案,因此不违反规则。冲突针对大号的已填数字。
粘贴到求解器时,只包含已填数字;空格记作 0,按从左到右、从上到下读取。不要把候选笔记当成格子的确定数字粘贴。
检验理解
本例擦掉 r1c2 的 2,就修复盘面了吗?
查看推理
没有。虽然消除了该行和宫的重复,但 r1c1、r4c1 仍在第 1 列重复出现 2。本例已知真正改动的是 r1c1;陌生题目应核对原始条件,不要随便挑一个高亮格删除。
关于本例
本例从完整棋盘构造而来,为便于检查特定推理保留了较多已知数。诊断示例在明确说明时故意设置冲突或多解;它们是教学盘面,不是已评级的游戏题目。
规则与术语
- Nikoli:数独规则
示例使用的标准行、列及 3×3 宫规则。 本页的棋盘与推理说明为另行制作。