Puzzles for programmers and pros - Shasha, Dennis Elliott (Wiley, 2007)