Checkerboard tiling with python and dancing links.
This is an experiment in using the python implementation of Knuth's Algorithm X, posted at http://www.cs.mcgill.ca/~aassaf9/python/algorithm_x.html by Ali Assaf. I did a python implementation using dicts myself, many years ago, but I'm certain it wasn't this elegant.
I'm scratching an old itch by exercising the algorithm on an old puzzle. One is given a checkerboard that has been broken in 12 pieces, and the problem is to reassemble it. More than 50 years ago, I bought this as a plastic puzzle, and was never able to do it. A years or so ago, I ran across the solution on line, which, of course shows the shapes of the pieces. I've been meaning to solve the puzzle with dancing links, and this is a good excuse.
The solution I found online is shown in the file solution.jpg