Project Euler Problem 1: Multiples of 3 and 5

If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.

Find the sum of all the multiples of 3 or 5 below 1000.

In [1]:
from six.moves import range

Version 1: The obvious way

In [2]:
sum(filter(lambda x: x%3==0 or x%5==0, range(1000)))
Out[2]:
233168

Version 2: If you prefer list comprehensions

In [3]:
sum(x for x in range(1000) if x%3==0 or x%5==0)
Out[3]:
233168

Comments

Comments powered by Disqus