Solutions to Programming Challenges