CS50 PSet 1 Solution