solution to project eulers questions