ProjectEuler.net solutions