Project Euler Problem 1

September 24th, 2008

Problem 1 is extremely simple:

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.

I chose to just brute force it. I looped through numbers 1 - 999, checked if it was a multiple of 3 or 5 and if it was added it onto the total.

sum = 0
for i in range(1, 1000):
    if i % 3 == 0 or i % 5 == 0:
        sum = sum + i
print sum

After a bit of editing I was able to get it onto 1 line:

print sum(filter(lambda x: x % 3 == 0 or x % 5 == 0, range(1,1000)))

Not the most efficient solution, but it works.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Google
  • description
  • Furl
  • Slashdot
  • StumbleUpon
  • Technorati

Leave a Reply