20 lines
481 B
Python
20 lines
481 B
Python
|
def primes(n):
|
||
|
if n<=2:
|
||
|
return []
|
||
|
sieve=[True]*(n+1)
|
||
|
for x in range(3,int(n**0.5)+1,2):
|
||
|
for y in range(3,(n//x)+1,2):
|
||
|
sieve[(x*y)]=False
|
||
|
|
||
|
return [2]+[i for i in range(3,n,2) if sieve[i]]
|
||
|
|
||
|
def primefactors(n):
|
||
|
primelist = primes(100)
|
||
|
lpf = 2
|
||
|
for prime in primelist:
|
||
|
print "Checking prime: "+str(prime)
|
||
|
if n%prime == 0 and prime > lpf:
|
||
|
print "Better prime found: "+str(prime)
|
||
|
lpf = prime
|
||
|
return "{!s},{!s}".format(lpf,n/lpf)
|