Skip to content

Instantly share code, notes, and snippets.

@shieldsd
shieldsd / euler4.py
Created March 13, 2012 10:48
Project Euler #4
def palindrome(n):
return n == int(str(n)[::-1])
print max((i * j for i in range(100, 1000)
for j in range(100, 1000)
if palindrome(i * j)))
@shieldsd
shieldsd / euler3.py
Created March 13, 2012 08:53
Project Euler #3
def factorise(n):
result = []
check = 2
while (check * check <= n):
if n % check == 0:
result.append(check)
n /= check
else:
check += 1
if n != 1:
@shieldsd
shieldsd / euler2.py
Created March 13, 2012 08:43
Project Euler #2
from itertools import takewhile
def fib():
a, b = 1, 1
while 1:
yield a
a, b = b, a + b
print sum(n for n in takewhile(lambda f: f < 4000000, fib()) if n % 2 == 0)
@shieldsd
shieldsd / euler1.py
Created March 12, 2012 22:03
Project Euler #1
print sum(n for n in range(1000) if n % 3 == 0 or n % 5 == 0)