solution to problem 55
solution to problem 55