Haskell Quiz/Chess960
The problem
Chess960 is a chess variant where the initial positions of the pieces are randomly chosen, with a few constraints:
- The king is between the rooks
- The bishops are on opposite colored squares
In short, the goal is to randomly generate valid Chess960 boards.
http://www.rubyquiz.com/quiz106.html