Project Euler Problem 55