Solves Sudoku puzzles with visual HTML representation. Can solve almost all puzzles that don't require guessing strategies.
Accessible at quinnquinnquinn.com/sudoku
Easy:
500467309903810427174203000231976854857124090496308172000089260782641005010000708
051200090038079040290500006123600700870301054009008361400002015010860430060007920
403000000680000500750003090500080130000090702017005006060138940009052060030907825
Medium:
000407050030600000070000003000000560000006020009705040050008100803100405000900000
020709000000000002003000480050000000000105000214000900000080190081050760000003050 (First medium solved)
Hard:
003010005800000200001600008030006080200040300070020050000000009040361000008000060 (First hard solved)
006500008095000020700900300000040270000873000079050000002008009050000810300005400
005000020000080000070256900080009003030020400021003060002400050050000680007000030
Most difficulty ratings thus far are just because they were ripped from nytimes.com.
All puzzles are currently solved with the following strategies:
- Single Candidates
- Single Options
- Cycle Detection
If a square only has one valid option, it's deemed a single candidate square. We can fill this in with that option.
If there's only one possibilty in a box/row/column for a number, we can fill that square.
Instead of being used to assign a value to a square, cycle detection is used to eliminate as many possibilities as possible for other squares. For any N larger than 1, if N squares in a box/row/column have only a total of N unique possibilities, this is a cycle/chain. This means that no other square in this box/row/column can have this value. In the below example, the 7 and 9 form a cycle within this box and therefore no other squares can have these values. This is a very simply example, while the solver looks for chains up to 8 squares long.


