deflist_of_primes(n):not_prime=set()# In is O(1) rather than O(N)
primes=set()foriinxrange(2,n+1):ifinotinnot_prime:primes.add(i)# Adds multiples of the number to the set of checked values
# i * (i-1) etc. are already updated so starts at i*i
not_prime.update(range(i*i,n+1,i))returnprimesdefget_factors(n):factors=set()foriinxrange(1,int(n**0.5)):ifn%i==0:factors.add(i)factors.add(n/i)returnlist(factors)defget_prime_factors(n):factors=sorted(get_factors(n),reverse=True)primes=list_of_primes(factors[0])forfactorinfactors:iffactorinprimes:returnfactorelse:returnNoneprint(get_prime_factors(13195))
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Python!