projecteuler.net solutions in java