Programming Assignments solutions from Algorithms, Part I by Princeton University.