第11章:数独
你有一个正方形网格,它被分为与网格行数相等的若干个大小相等的子块。每个方格必须填入从1到网格大小的数字,使得
- 每行只包含每个数字的一次出现
- 每列只包含每个数字的一次出现
- 每个块只包含每个数字的一次出现。
- (可选,默认关闭)方格的两条主对角线各自只包含每个数字的一次出现。
你会得到一些数字作为线索;你的目标是正确放置其余数字。
在默认设置下,子块是正方形或矩形的。默认谜题大小是3×3(实际9×9网格,分为九个3×3块)。你也可以选择矩形块而不是正方形块的大小,如2×3(6×6网格分为六个3×2块)。或者,你可以选择”拼图”模式,其中子块是不同谜题之间形状不同的任意形状。
另一个可用模式是”杀手”。在此模式下,线索不以填入方格的形式给出;相反,网格被彩色线条分为”笼子”,对于每个笼子,游戏告诉你该笼子中所有数字的和应该是多少。此外,在笼子内数字不得出现超过一次,即使笼子跨越现有区域的边界。
如果你选择需要超过9个数字的谜题大小,额外的数字将是字母表的字母。例如,如果你选择3×4,那么进入你网格的数字将是1到9,加上’a
’、‘b
’和’c
’。这不能为杀手谜题选择。
[5] https://www.nikoli.co.jp/en/puzzles/sudoku/
[6] http://en.wikipedia.org/wiki/Sudoku
11.1 数独操作
要玩数独,只需在任何空方格中点击鼠标,然后在键盘上输入数字或字母来填充该方格。如果你犯了错误,在错误方格中点击鼠标并按空格键再次清除它(或使用撤销功能)。
铅笔标记:
如果你在方格中_右键_点击然后输入数字,该数字将作为”铅笔标记”输入方格中。你可以在同一方格中有多个数字的铅笔标记。包含填入数字的方格不能也包含铅笔标记。
游戏不关注铅笔标记,所以你用它们做什么完全取决于你:你可以用它们作为提醒,提醒特定方格需要在你了解更多关于特定数字的信息后重新检查,或者你可以用它们作为给定方格中可能数字的列表,或者任何其他你觉得合适的东西。
要擦除单个铅笔标记,在方格中右键点击并再次输入相同数字。
当你左键点击并输入数字,或当你左键点击并按空格键时,方格中的所有铅笔标记都会被擦除。右键点击并按空格键也会擦除铅笔标记。
键盘操作:
或者,使用光标键在网格中移动标记。按回车键切换标记(从普通标记到铅笔标记),输入数字以适当方式输入方格中;输入0或使用空格键将清除填充的方格。
(第2.1节 中描述的所有操作也都可用。)
11.2 数独参数
单独允许你在”类型”菜单上配置谜题网格的两个独立维度:主网格被分为的列数和行数。(块的大小是这个的逆:例如,如果你选择2列和3行,每个实际块将有3列和2行。)
如果你勾选’X’复选框,单独将应用可选的额外约束,即网格的两条主对角线也包含每个数字一次。(这在报纸中有时被称为’Sudoku-X’。)在此模式下,两条主对角线上的方格将稍微着色,以便你知道它已启用。
如果你勾选’拼图’复选框,单独将生成随机形状的子块。在此模式下,实际网格大小将取为’列’和’行’框中输入数字的乘积。没有理由你必须在两个框中都输入大于1的数字;拼图模式对网格大小没有约束,如果你愿意,它甚至可以是质数。
如果你勾选’杀手’复选框,单独将生成一组笼子,这些笼子是随机形状的,用不同颜色的轮廓绘制。这些区域中的每一个都包含一个较小的线索,显示该区域中所有方格的数字和。
你也可以配置生成谜题中显示的对称类型。更多对称使谜题看起来更漂亮,但也可能使它们更容易,因为对称约束可能迫使存在超过必要的线索。完全不对称的谜题有自由包含尽可能少的线索。
最后,你可以配置生成谜题的难度。难度级别通过解决谜题所需的推论技术的复杂性来判断:每个级别都需要在前一个级别中不必要的推理模式。特别是,在’平凡’和’基本’难度级别,总是有一个方格你可以用单个数字填充,而在’中等’级别及以上,你必须对数字可能在的方格_集合_(或可能在方格中的数字集合)进行部分推论。在’不合理’级别,即使这还不够,你最终必须猜测,然后如果证明是错误的就回溯。
生成困难谜题本身就困难:如果你选择较高难度级别之一,单独可能必须在找到足够困难的谜题之前进行许多生成尝试。准备等待,特别是如果你也配置了大谜题大小。
Simon Tatham’s Portable Puzzle Collection, version 20250615.b589c5e