After reading an article in the June, 2006, issue of Scientific American (because I'm just that exciting), my interest was piqued (forgive my use of the passive voice in what is intended to be a casual introduction) about solving sudoku puzzles. Or maybe my interest was piqued about solving solving sudoku puzzles. That is, I wasn't really interested in the puzzles themselves. I was just interested in the process of solving them.

I had been looking for some project that would allow me to dust off my C++ chops, which had been languishing, forgotten in the back of some creaky drawer. I put together a small program with a mind-bending set of data structures to keep recursion to a minimum. It ended up being a fairly snappy program, if I do say so myself (and I do say so myself).

Hopefully, in the near future, I'll apply some l33t web page 5k1LLz to make the interface to this page extra groovy. I'd also like to put together a little description of how the program works. (After all, we've already determined that I read Scientific American and write computer programs for fun. I can't start holding back now.) Until then, you'll just have to live with this crummy interface.

- Aaron Schwartzbard (aaron <SHIFT>-2 vestigial period org)

     
     
     

     
     
     

     
     
     

Enter a puzzle as a string: