Project euler problem 9