http://projecteuler.net/ custom solutions