Project euler Python solutions