solution to Project Euler problem 9.