数独怎么解:初学者最先要学的基本技巧

数独的规则三句话就能说完。在9×9的格子里填入1到9。每一行、每一列、每个粗线围起来的3×3宫里,每个数字都只出现一次。一开始就给出的数字,也就是提示数,不能改动。
规则只有这些,可第一次面对盘面时,很多人不知道从哪里下手。这篇文章按我建议的学习顺序,介绍初学者最先该学的几种技巧。简单的题,只用前三种就能解到最后。
先统一几个说法。横的叫“行”,竖的叫“列”,粗线围起来的3×3方块叫“宫”。某个空格里还可能填的数字,叫“候选数”。
1. 在宫里找一个数字的位置
第一种技巧,是盯住一个数字,看它在某个宫里能放在哪里。英文叫 hidden single。
比如左上的宫里还没有5。如果第1行的别的宫里已经有5,那么左上宫的5就不能放在第1行。如果第2行的别的宫里也有5,第2行也排除。如果第2列下方很远的地方有5,第2列也排除。像这样一条条划掉,有时宫里只剩下一个格子能放5,那里就是5的位置。
下面是我自己编的例子,“.”表示空格。
. . . | . . 5 | . . .
. . . | . . . | . 5 .
8 . . | . . . | . . .
. . . | . . . | . . .
. . . | . . . | . . .
. 5 . | . . . | . . .
左上宫里的5,不能在第1行和第2行(这两行都已经有5),也不能在第2列(下面有5)。剩下的是第3行的第1列和第3列,而第1列已经是8。所以5只能在第3行第3列。
这种技巧的好处是,脑子里只要记着一个数字,扫视整个盘面就行。从提示数里出现次数最多的数字开始,因为它划掉的线最多,位置最容易找到。从1到9依次来,每个数字看遍九个宫。刚开始的时候,光靠这一招就能填上不少格子。
2. 在行或列里找一个数字的位置
同样的想法,也可以用在行和列上。某一行还没有7时,看这一行的空格,把所在列或所在宫里已经有7的格子都排除。只剩一个,那就是7。
这比在宫里找更容易看漏。只剩两三个空格的行或列,值得先用这个方法看一看。
3. 找一个格子里的数字
前两种是“从数字找格子”。第三种反过来,是“从格子找数字”。英文叫 naked single。
选一个空格,把它所在的行、列、宫里已有的数字都收集起来。如果1到9里已经有8种出现过,剩下的那一个就是答案。
这个方法要等盘面填得差不多了才好用。刚开始候选数太多,很难缩到一个。等第1和第2种用不下去了,再从最满的行和宫里的格子开始,一个一个看。
什么时候开始写候选数
第1到第3种都走不动时,就该写候选数了,也就是在空格的角上,用小字写下还可能填的数字。
我认为不必一开始就把所有格子都写满。全写一遍很费时间,而且只要写错一个,后面就会全乱。先用第1到第3种尽量往前推,停下来以后,再从空格最少的宫开始写,会更稳妥。
每确定一个数字,就把同一行、同一列、同一宫的候选数里的这个数字划掉。忘了这一步,候选数就会比实际的多。
4. 利用宫和行、列的关系
有了候选数,下一种技巧就能看出来了。英文叫 pointing,也叫 locked candidates。
假设在某个宫里,7的候选只在同一行的两个格子里。还不知道是哪一个。但可以确定,这个宫的7一定在这一行上。所以,这一行在其他宫里的格子都不可能是7,可以把它们候选数里的7划掉。
反过来也成立。如果某一行里,7的候选全都在同一个宫里,那么这个宫在其他行的格子就不可能是7。
这种技巧不直接确定数字,只是减少候选数。但候选数减少以后,别的地方常常就能用上第1或第3种技巧了。
5. 利用两个格子的组合
还有一种值得早点学。英文叫 naked pair。
同一行里,有两个格子的候选数都只有“2和6”。那么2和6一定会被这两个格子用掉。虽然不知道哪个是2、哪个是6,但这一行的其他格子都不可能是2或6,可以把它们划掉。列和宫也一样。
不推荐的解法
有一种做法我不推荐:没有理由地先填一个试试,也就是乱猜。
数独题目通常设计成只有一个解。也就是说,每个格子都能顺着道理确定下来。乱猜猜对了,那不是解出来的,只是碰巧。猜错了,之后根据它确定的格子会全部出错,而且你很难知道是从哪里开始错的。
卡住的时候,填之前先问问自己,能不能说出“为什么是这里”。说不出来,就说明还有没看到的数字或没看过的宫。
学习的顺序
总结一下顺序:在宫里找数字的位置;在行和列里也找;找格子里的数字;走不动了就写候选数;再用宫和行列的关系、两个格子的组合来减少候选数。
前三种不用写候选数,在脑子里就能用,简单的题用这些就够了。后两种要有候选数才看得出来,从中等难度开始就会用到。
用 Sudoku365 练习
Sudoku365 是我做的数独应用,可以在 iPhone、iPad 和 Android 上玩。有“简单”“中等”“困难”“专家”四个难度,每个难度300题,共1200题。
应用里“简单”的300道题都用求解程序检查过,只用本文第1到第3种技巧就能全部解完。“中等”的题,只用这三种都解不完;加上第4种宫和行列的关系,大约七成能解到最后。想先熟悉前三种技巧,可以从“简单”开始;想练习需要候选数的技巧,可以从“中等”开始。
有几个功能对练习有帮助。选中一个格子时,同一行、同一列、同一宫,以及填着相同数字的格子都会高亮,用第1种技巧找位置时更容易看清。打开“笔记”就可以写候选数;设置里的“从笔记中移除数字”默认开启,填入数字后,相关格子笔记里的这个数字会自动删除。“隐藏已放置数字按钮”也默认开启,某个数字放满9个后,它的按钮会消失,可以看出还剩哪些数字。
“显示错误数字”默认开启,填错的数字会马上显示出来,并计为一次失误。失误3次游戏结束。乱猜会立刻被发现,所以很适合练习“有理由才填”。
应用免费,带广告,可以一次性购买“移除广告”来关闭广告。第一道题怎么开始,写在 Sudoku365 入门里;连续记录和统计怎么用,可以看 Sudoku365 使用技巧。
数独靠的是道理,不是运气。为一个格子找到理由,下一个理由通常就会出现。从一个数字、一个宫开始吧。
