Problem Solving With Algorithms and Data Structures solutions