solving problems in various languages from http://projecteuler.net/