数独格式
谜题格式
标准谜题格式
这是标准数独的标准格式,在许多数独游戏中使用。
规则:
1-9,各代表一个已知数字.代表一个空的格子
例 1:
67..4..524....1....53.87.91....12.85.2...46..7.5...21..47.3.52.5.62.8.499.....378
扩展规则(在其他数独游戏中可能无效):
0也代表一个空格空格、表格('\t')、换行('\n')和回车('\r')忽略
例 2:
670040052400001000053087091000012085020004600705000210047030520506208049900000378
例 3:
67..4..52
4....1...
.53.87.91
....12.85
.2...46..
7.5...21.
.47.3.52.
5.62.8.49
9.....378
JSON谜题格式
注意:这种谜题格式只在本游戏中有效
参数 type
可能值:
- classic
可省略,默认值为classic
参数 m,n
m和n分别表示一个盒子的宽度和高度,例如,最常用的是m=3,n=3
可省略,默认值都是3
参数 numbers
这是一个字符串数组,每个字符串表示一行已知数字,如果一个格子中没有已知数字,则填写.
经典数独谜题JSON示例
{
"id": "69367c1bf66145eb8f6fc7c87a0fd828",
"numbers": [
"......16.",
"1........",
".3...7...",
"..1..4..9",
"..5...61.",
".67.312..",
".2.......",
".53.2.7.4",
"4..5..9.."
]
}
状态格式
标准状态格式
这个格式用于表示数独面板的当前状态,并非初始谜题内容。状态包含了已知、已填和候选数信息。本格式在很多数独软件、游戏中可以使用。
.----------------.----------------.----------------.
| 5 2 78 | 3 1479 479 | 789 18 6 |
| 6 78 9 | 2 17 5 | 3 148 147 |
| 1 3 4 | 78 6 789 | 2 5 79 |
.----------------+----------------+----------------.
| 7 45 2 | 1 8 3 | 59 6 49 |
| 8 45 6 | 457 4579 479 | 1 2 3 |
| 3 9 1 | 6 45 2 | 57 47 8 |
.----------------+----------------+----------------.
| 9 178 5 | 478 2 478 | 6 3 17 |
| 2 178 378 | 9 37 6 | 4 178 5 |
| 4 6 378 | 578 357 1 | 78 9 2 |
.----------------.----------------.----------------.
数字填写:
- 同一个格子中的候选数之间不要有空格,不同的格子的候选数用空格隔开
- 不同盒子的候选数用|隔开。
格式的局限:
- 格子中如果只有一个候选数和已填以及已知是无法区分的,所以只有一个候选数即认为是已填。
- 不能表示空的格子,也就是即没有已填、已知,也没有候选数。
注意:
- 在文本输入框中,有些相似的格式也是有效的,请自行尝试。
Hodoku的类似格式(在本游戏中可以使用):
.-------------.----------------.---------------.
| 5 2 78 | 3 1479 479 | 789 18 6 |
| 6 78 9 | 2 17 5 | 3 148 147 |
| 1 3 4 | 78 6 789 | 2 5 79 |
:-------------+----------------+---------------:
| 7 45 2 | 1 8 3 | 59 6 49 |
| 8 45 6 | 457 4579 479 | 1 2 3 |
| 3 9 1 | 6 45 2 | 57 47 8 |
:-------------+----------------+---------------:
| 9 178 5 | 478 2 478 | 6 3 17 |
| 2 178 378 | 9 37 6 | 4 178 5 |
| 4 6 378 | 578 357 1 | 78 9 2 |
'-------------'----------------'---------------'
Sudoku Explainer状态格式
Sudoku Explainer的特殊格式(在本游戏中可以使用):
....5.....2.............78...3......1..4..7.9...4..7.9......7891......8......6........6.........78.........9.2.......1.....7......5......3......1..4...8.1..4..7..1..........3.........4...........78......6.........789.2...........5..........7.9......7.....45.....2.......1...............8...3..........5...9.....6......4....9.......8....45.........6......45.7.....45.7.9...4..7.91.........2.........3........3..............91.............6......45.....2...........5.7.....4..7.........8.........91.....78.....5.......4..78..2..........4..78......6.....3......1.....7...2.......1.....78...3...78.........9..3...7.......6......4.....1.....78.....5.......4..........6.....3...78.....5.78...3.5.7..1..............78.........9.2.......
部分谜题格式
部分谜题JSON格式
参数 map
初始谜题的json内容
参数 beginNumbers, endNumbers
开始和结束状态中的数字内容,与map中的numbers格式相同
参数 beginCandidatesTable, endCandidatesTable
开始和结束状态中的候选数内容,格式和标准状态格式相同,只是不包含已填格子的内容
参数 givenHints
预定要在解题过程中显示的提示,每个提示都是一个字符串,也就是提示的特征字符串。
例子
{
"id": "cd7486d5561c4a92bc8f7e293abf8ae3",
"map": {
"id": "d6bacb69b20c46d8800dc32caa406903",
"numbers": [
".2.47..9.",
"......3.6",
"..3......",
"2....876.",
".9..61...",
".4.....39",
".8.7.....",
"..913....",
".6...9.7."
]
},
"beginNumbers": [
".2.473.9.",
"...8..3.6",
"..36....7",
"23.94876.",
".9.361...",
".4...7.39",
".8.7.691.",
"..91346..",
".6..89.7."
],
"beginCandidatesTable": [
".----------------.----------------.----------------.",
"| 568 0 568 | 0 0 0 | 158 0 158 |",
"| 4579 157 457 | 0 19 25 | 0 245 0 |",
"| 4589 15 0 | 0 19 25 | 2458 2458 0 |",
".----------------+----------------+----------------.",
"| 0 0 15 | 0 0 0 | 0 0 15 |",
"| 578 0 578 | 0 0 0 | 2458 2458 2458 |",
"| 168 0 168 | 25 25 0 | 18 0 0 |",
".----------------+----------------+----------------.",
"| 34 0 24 | 0 25 0 | 0 0 345 |",
"| 57 57 0 | 0 0 0 | 0 28 28 |",
"| 134 0 124 | 25 0 0 | 45 0 35 |",
".----------------.----------------.----------------."
],
"endNumbers": [
".2.473.9.",
"...8..3.6",
"..36....7",
"23.94876.",
".9.361...",
".4...7.39",
".8.7.691.",
"..91346..",
".6..89.7."
],
"endCandidatesTable": [
".----------------.----------------.----------------.",
"| 568 0 568 | 0 0 0 | 158 0 158 |",
"| 4579 157 47 | 0 19 25 | 0 245 0 |",
"| 4589 15 0 | 0 19 25 | 2458 2458 0 |",
".----------------+----------------+----------------.",
"| 0 0 15 | 0 0 0 | 0 0 15 |",
"| 578 0 578 | 0 0 0 | 2458 2458 2458 |",
"| 168 0 168 | 25 25 0 | 18 0 0 |",
".----------------+----------------+----------------.",
"| 34 0 24 | 0 25 0 | 0 0 345 |",
"| 57 57 0 | 0 0 0 | 0 28 28 |",
"| 134 0 124 | 25 0 0 | 45 0 35 |",
".----------------.----------------.----------------."
],
"givenHints": [
"AETS7EQQOqmOAAMgAAQAAI4y0X9nGjgm"
]
}