数独的难度由什么决定

数独的书和应用,几乎都会给题目标上「简单」「困难」这样的难度。那么,难度是由什么决定的呢?我想很多人会认为,一开始给出的数字(提示数)越少,题目就越难。
先说结论:提示数和难度关系不大。决定难度的,是要解到最后需要用到什么技巧。这篇文章用 Sudoku365 收录的1200道题的数据来确认这一点。
提示数几乎没有差别
Sudoku365 有“简单”“中等”“困难”“专家”四个难度,各300题,共1200题。我按难度数了这1200道题的提示数。
| 难度 | 提示数(平均) | 最少到最多 |
|---|---|---|
| 简单 | 25.1 | 25~27 |
| 中等 | 25.2 | 25~27 |
| 困难 | 24.0 | 21~27 |
| 专家 | 24.7 | 22~28 |
每个难度的平均提示数都在24到25个左右。「简单」和「专家」的平均只差0.4个。「专家」里甚至有提示数为28个的题,比「简单」里任何一道题都多。
提示数有下限。根据英文维基百科的 Mathematics of Sudoku 条目,答案唯一的数独至少需要17个提示,这是2014年麦圭尔等人的论文用计算机穷举搜索证明的。在17个以上,同样的提示数,既能做出简单的题,也能做出难题。
决定难度的是需要的技巧
数独的技巧,大致可以分成几个层次:
- 在宫里,某个数字只有一个位置可以放。 选定一个数字,用行和列排除
- 在行、列或宫里,某个数字只有一个位置可以放。 把第1条扩展到宫以外
- 某一格只能填一个数字。 关注一格,排除同行、同列、同宫里出现过的数字
- 宫与行、列的关系。 如果某个数字在一个宫里只能放在某一行,那么这一行的其他宫里就可以排除这个数字
- 预约,以及两格、三格的组合。 利用候选数之间的关系
- X-Wing、剑鱼、XY-Wing 等。 有名字的进阶技巧
- 这些都定不下来时,耐心地推理
第1到4条写在数独怎么解:初学者最先要学的基本技巧,第5和6条写在数独进阶技巧里。
第1到3条不用写候选数,在脑子里就能用。从第4条开始,要有候选数才看得出来。我认为,一道题的难度,取决于要用到这个列表的第几条才能解到最后。
关键在于,难度是由「最难的那一处」决定的。即使几乎所有格子都能用简单技巧填上,只要剩下的某处需要用一次 X-Wing,不会 X-Wing 就解不开这道题。反过来,即使提示少、要填的格子多,只要每一步都能用第1到3条找到下一格,就只是花时间,算不上难题。
根据英文维基百科的 Sudoku 条目,把数独推广到英国报纸上的韦恩·古尔德,花了六年时间开发出生成题目并评定难度的计算机程序。不是看提示数这样的表面,而是从解法这一侧去衡量人感受到的难度。我想无论在哪里出的题,核心都在这里。
Sudoku365 四个难度需要的技巧
按上面的技巧逐题解 Sudoku365 的题目、确认的结果,我在之前的文章里写过。总结如下:
- 简单: 300题全部只用第1到3条就能解到最后,不需要写候选数
- 中等: 没有一道题只用第1到3条就能解完。加上第4条,约七成能解到最后
- 困难: 300题全部能用到第5条为止的技巧(预约和两格、三格的组合)解到最后
- 专家: 即使用上到第6条为止的全部技巧,能解完的也只有一成左右。多数题还需要更进一步的技巧,或者耐心的推理
提示数几乎相同,需要的技巧却差这么多。我认为可以这样理解:难度的名字表示的是这种差别,而不是提示数。
进到下一个难度的时机
既然难度由技巧决定,那么进到下一个难度的时机,我认为也用技巧来判断最清楚。
- 从简单到中等: 能用第1到3条,不卡住地解到最后时。中等开始要练习写候选数。写法见数独候选数(笔记)的写法
- 从中等到困难: 能自己找出第4条「宫与行、列的关系」时。困难需要预约和组合
- 从困难到专家: 能从候选数里毫不犹豫地找出预约和组合时
在统计里,可以按难度查看「通关数」「最佳时间」「平均时间」。平均时间不再下降时,我认为说明现在这个难度要用的技巧已经掌握了。反过来,如果在更高的难度里总是卡在同样的地方,那就说明缺了某个技巧。这时退回一个难度,练习卡住时本该用的技巧,我想是最近的路。卡住时怎样重新检查,写在数独卡住了怎么办里。
关于 Sudoku365
Sudoku365 是我做的数独应用,iPhone、iPad 和 Android 都能玩。四个难度各300题,共1200题,我确认过1200题全部只有唯一解。
「提示」一开始有10个,每通关一题加1个,看广告也加1个。应用免费,有广告,一次性购买「移除广告」就可以去掉广告。
