project Euler: problem 1