solutions to problems on http://projecteuler.net