Algorithm Classics: Solving the 100 Doors Riddle