solutions to the problems listed on projecteuler.net