Project Euler: Problem 33