Fast sudoku solver for C
------------------------

by Paul Hsieh

To learn more about sudoku puzzles see:

    http://en.wikipedia.org/wiki/Sudoku

Uses standard bit twiddling methods to solve sudoku puzzles.  I've implemented
that most used direct reasoning methods for deducing the value of each cell.
In addition I've implemented a non-recursive trial and error mechanism that
appears sufficient to solve any sudoku puzzle that I have encountered thus far.

The contents of this archive is made available to the public domain:

solve.c                 - Solver code.
sha1.c                  - SHA1 hash function
sha1.h                  - SHA1 hash function prototypes
wspuz-1.txt             - Example puzzle
wspuz-2.txt             - Example puzzle
wspuz-3.txt             - Example puzzle
hard.htm                - Example solution for a hard puzzle.
hard.jpg                - Example of deep search which leads to contradiction.
readme.txt              - This file.

The format for the input files is just 9 lines if 9 characters that are 
either numbers 1 through 9, or some other character indication a blank cell.
Note that you cannot truncate lines short even if they are just blanks to the
end.

The format for the output is HTML with CSS.  You can view the results with 
any modern web browser.

