Solutions to ProjectEuler problems