Sudoku Explained

入门 约 5 分钟

R1C2 怎么读,以及为什么记法值得较真

这个站上每一个技巧都要指着某一格说话。如果那个名字不够直白,后面的推理也不会直白。

一句话版本

你只需要两套约定,而且都是数数。

格子用「行 + 列」,写作 R 行 C 列。R1C1 是左上角,R9C9 是右下角。R4C7 是第四行、第七列。

宫是那些三乘三的方块。本站按方位叫名字——左上、正中、右下——不编号,因为不同书的编号不一样,而名字不需要翻译表。

其余的一切,都是这两条的推论。

为什么名字重要

一个说不出口的技巧,你也没法核对它。

「那个 4 只能在第八行的第四列或第八列」——这句话是对的,而且几乎没用。换成「在第 4 列,4 只有两个家,R8C4 和 R9C4」,你可以把手指按在两个格子上,核对这个说法,也可以反驳它。

这就是记法的全部理由。它把推理变成可核对的东西,而在数独盘面上,只有可核对的推理才值得信。

读格子名

两个数字,各自带一个字母,顺序固定。

名字行列所在宫
R1C111左上
R1C919右上
R5C555正中
R8C282左下
R9C999右下

一格属于哪个宫是算术,不是记忆:第 1 至 3 行是上带,4 至 6 行是中带,7 至 9 行是下带;列同理,从左到右。R8C2 在下带、左栈,所以它在左下宫。

候选数怎么写才看得下去

几乎所有人都会犯的错,是按到达顺序写候选:先写个 3,再把 7 挤在它上面,1 塞到边上。

正确做法是每格预留九个固定位置,全盘统一,按阅读顺序:

``1 2 34 5 67 8 9``

7 永远在左下格位,2 永远在上中格位。几十道题之后,你就不再读数字,而是读「位置」——快得多,而且缺了哪个数字是看得见的一个洞,不用逐个数念一遍。

这不是个人习惯问题。它决定了一份候选表是一眼扫得完,还是得逐格解码。

把一步棋讲出来

格子有了名字,一步棋就是一句话,而这句话是可以被检验的。

最后这句就是本站每一篇技巧文章的写法,不是修辞。如果一个图形没法用这种句子说出来,那这个图形多半不存在——把模糊的直觉打扮成一个「形状」,是解数独时说服自己接受错误排除的最常见方式。

什么时候动笔写候选

不是一开始。一份完整候选表很贵:八十一格乘以最多九个数字,是相当多的铅笔活,而简单题上你往往没用到它就解完了。

可用的门槛是:扫描开始不出结果的时候,再动笔。 只要隐性唯一数还在一个接一个地掉出来,候选数就是纯开销。等你把每个数字都扫遍了、一无所获,盘面已经不再一眼可读,那一刻候选表才对得起它的成本。

还有一个值得知道的中间档:只给快做完的数字写候选,或者只在看起来最拥挤的两三个宫里写。局部标记不是妥协,它通常就是恰到好处的信息量,而且能让盘面保持可读。

什么时候记候选,展开讲。

用在哪

先在脑子里用,不只是纸上。先给格子命名、再对它推理,这个习惯能更早拦住错误:一个你指不出来的说法,多半是你还没验证过的说法。

接下来的四个技巧——显性数对、隐性数对、区块摒除、行列摒除——全都用这套记法写成。不学它也能读懂,但没法核对。

常见疑问

R1C2 是什么意思?

第 1 行、第 2 列。行从上往下数 1 到 9,列从左往右数 1 到 9,所以 R1C2 是顶行的第二格。

宫怎么编号?

各家编号不统一,所以本站不给宫编号,直接叫名字——左上、中上、右上、左中、正中、右中、左下、中下、右下。名字经得起重读,编号不行。

候选数该怎么写在格子里?

固定顺序,永远用同样九个位置,这样数字的「位置」本身也带信息。随手写、想到哪写到哪,这层信息就废了。

一定要写候选数吗?

不一定,简单题上就不该写,写了反而拖慢。等盘面走不动了再写,因为一份完整候选表的代价不低,只在扫描已经无产出时才划算。