solutions for problems from projecteuler.net