project euler - problem 1