Programming challenges : - Skiena, Steven S. (Texts in computer science, 2002)