I know that this post contain some kind of a stupid question. But, as I read and understand that, an empty Sudoku grid is also considered to be a valid Sudoku grid (provided that to exclude minimum 17 clues and unique solution constraint).
Also, I am not interested in speed for a moment (but considered added information, if one supplied). However, interested to know about steps taken to find first solution only.
Here I am sharing my solver empty Sudoku grid solution step wise, which only search through Naked/Hidden Singles/Tuples, Box-Line/Pointing and Claiming Intersection Removals, Basic Fish (i.e., X-Wing, Sword Fish and Jelly Fish) and Trial-and-Error strategies. I am not interested/planning to implement rating in my Solver near future.
My Bitwise Sudoku Solver program solves empty Sudoku grid, without backtracking, as follows:
- Code: Select all
0) Apply Trial and Error Candidate 1 from Candidates 123456789 at Cell 0
1) Apply Trial and Error Candidate 2 from Candidates 23456789 at Cell 1
2) Apply Trial and Error Candidate 3 from Candidates 3456789 at Cell 2
3) Apply Trial and Error Candidate 4 from Candidates 456789 at Cell 3
4) Apply Trial and Error Candidate 5 from Candidates 56789 at Cell 4
5) Apply Trial and Error Candidate 6 from Candidates 6789 at Cell 5
36) Found Naked triplet Candidates 789 at Unit 20 Cells 6 7 8
6) Apply Trial and Error Candidate 7 from Candidates 789 at Cell 6
7) Apply Trial and Error Candidate 8 from Candidates 89 at Cell 7
8) Apply Naked Single Candidate 9 from Candidates 9 at Cell 8
9) Apply Trial and Error Candidate 4 from Candidates 456789 at Cell 9
10) Apply Trial and Error Candidate 5 from Candidates 56789 at Cell 10
11) Apply Trial and Error Candidate 6 from Candidates 6789 at Cell 11
100) Found Hidden triplet Candidates 789 at Unit 1 Cells 12 13 14
36) Found Naked triplet Candidates 789 at Unit 2 Cells 18 19 20
100) Found Naked triplet Candidates 123 at Unit 2 Cells 21 22 23
12) Apply Trial and Error Candidate 7 from Candidates 789 at Cell 12
13) Apply Trial and Error Candidate 8 from Candidates 89 at Cell 13
14) Apply Naked Single Candidate 9 from Candidates 9 at Cell 14
15) Apply Trial and Error Candidate 1 from Candidates 123 at Cell 15
16) Apply Trial and Error Candidate 2 from Candidates 23 at Cell 16
17) Apply Naked Single Candidate 3 from Candidates 3 at Cell 17
18) Apply Trial and Error Candidate 7 from Candidates 789 at Cell 18
19) Apply Trial and Error Candidate 8 from Candidates 89 at Cell 19
20) Apply Naked Single Candidate 9 from Candidates 9 at Cell 20
21) Apply Trial and Error Candidate 1 from Candidates 123 at Cell 21
22) Apply Trial and Error Candidate 2 from Candidates 23 at Cell 22
23) Apply Naked Single Candidate 3 from Candidates 3 at Cell 23
24) Apply Trial and Error Candidate 4 from Candidates 456 at Cell 24
25) Apply Trial and Error Candidate 5 from Candidates 56 at Cell 25
26) Apply Naked Single Candidate 6 from Candidates 6 at Cell 26
27) Apply Trial and Error Candidate 2 from Candidates 235689 at Cell 27
28) Apply Trial and Error Candidate 1 from Candidates 14578 at Cell 29
29) Apply Trial and Error Candidate 4 from Candidates 4578 at Cell 32
30) Apply Trial and Error Candidate 5 from Candidates 578 at Cell 35
31) Apply Trial and Error Candidate 3 from Candidates 3679 at Cell 31
32) Apply Trial and Error Candidate 6 from Candidates 679 at Cell 28
33) Apply Hidden Single Candidate 7 from Candidates 79 at Cell 34
34) Apply Trial and Error Candidate 8 from Candidates 89 at Cell 33
35) Apply Naked Single Candidate 9 from Candidates 9 at Cell 30
36) Apply Trial and Error Candidate 1 from Candidates 167 at Cell 40
37) Apply Trial and Error Candidate 2 from Candidates 24 at Cell 44
38) Apply Trial and Error Candidate 6 from Candidates 67 at Cell 49
77) Found Naked triplet Candidates 479 at Unit 25 Cells 58 67 76
39) Apply Trial and Error Candidate 5 from Candidates 58 at Cell 39
40) Apply Trial and Error Candidate 7 from Candidates 78 at Cell 41
22) Found Naked pair Candidates 28 at Unit 5 Cells 48 50
41) Apply Trial and Error Candidate 2 from Candidates 28 at Cell 48
42) Apply Naked Single Candidate 8 from Candidates 8 at Cell 50
43) Apply Trial and Error Candidate 4 from Candidates 48 at Cell 38
44) Apply Hidden Single Candidate 8 from Candidates 389 at Cell 36
35) Found Hidden pair Candidates 14 at Unit 5 Cells 52 53
45) Apply Trial and Error Candidate 5 from Candidates 57 at Cell 47
46) Apply Hidden Single Candidate 7 from Candidates 379 at Cell 46
47) Apply Trial and Error Candidate 3 from Candidates 39 at Cell 45
48) Apply Naked Single Candidate 9 from Candidates 9 at Cell 37
49) Apply Naked Single Candidate 9 from Candidates 9 at Cell 51
50) Apply Trial and Error Candidate 3 from Candidates 36 at Cell 42
51) Apply Naked Single Candidate 6 from Candidates 6 at Cell 43
52) Apply Trial and Error Candidate 1 from Candidates 14 at Cell 52
53) Apply Naked Single Candidate 4 from Candidates 4 at Cell 53
54) Apply Trial and Error Candidate 5 from Candidates 569 at Cell 54
55) Apply Trial and Error Candidate 1 from Candidates 12 at Cell 59
56) Apply Trial and Error Candidate 3 from Candidates 34 at Cell 55
28) Found Hidden pair Candidates 49 at Unit 6 Cells 58 61
57) Apply Trial and Error Candidate 6 from Candidates 68 at Cell 57
58) Apply Naked Single Candidate 2 from Candidates 2 at Cell 60
59) Apply Trial and Error Candidate 7 from Candidates 78 at Cell 56
60) Apply Naked Single Candidate 8 from Candidates 8 at Cell 62
61) Apply Trial and Error Candidate 4 from Candidates 49 at Cell 61
62) Apply Naked Single Candidate 9 from Candidates 9 at Cell 58
63) Apply Trial and Error Candidate 6 from Candidates 69 at Cell 63
64) Apply Naked Single Candidate 5 from Candidates 5 at Cell 69
65) Apply Naked Single Candidate 2 from Candidates 2 at Cell 68
66) Apply Naked Single Candidate 8 from Candidates 8 at Cell 65
67) Apply Naked Single Candidate 3 from Candidates 3 at Cell 66
68) Apply Naked Single Candidate 9 from Candidates 9 at Cell 70
69) Apply Naked Single Candidate 9 from Candidates 9 at Cell 72
70) Apply Naked Single Candidate 2 from Candidates 2 at Cell 74
71) Apply Naked Single Candidate 8 from Candidates 8 at Cell 75
72) Apply Naked Single Candidate 5 from Candidates 5 at Cell 77
73) Apply Naked Single Candidate 6 from Candidates 6 at Cell 78
74) Apply Naked Single Candidate 3 from Candidates 3 at Cell 79
75) Apply Trial and Error Candidate 1 from Candidates 17 at Cell 71
76) Apply Naked Single Candidate 4 from Candidates 4 at Cell 64
77) Apply Hidden Single Candidate 4 from Candidates 47 at Cell 76
78) Apply Naked Single Candidate 1 from Candidates 1 at Cell 73
79) Apply Naked Single Candidate 7 from Candidates 7 at Cell 67
80) Apply Naked Single Candidate 7 from Candidates 7 at Cell 80
1) 123456789456789123789123456261934875894517362375268914537691248648372591912845637 # S1 # N0 # H4 # 15.000000
It takes following steps:
- Code: Select all
1. Naked Single = 30
2. Hidden Single = 04
3. Trial and Error = 47
4. Naked pair = 01
5. Hidden pair = 02
6. Naked triplet = 04
7. Hidden triplet = 01
====
Total steps = 89
R. Jamil
------------------------------------------------------------
Place the word "only" anywhere on the sentence:
"She told him that she loved him."