Cs50 Tideman Solution