コード例 #1
0
def prime(x):
	if not(x in primes):
		s = isprime(x)
		primes[x] = s
		return s
	else:
		return primes[x]
コード例 #2
0
def getPrimes(n):
    primes = []
    count = 0
    i = 0
    while count < n:
        if isprime(i):
            count += 1
            primes.append(i)
        i += 1
    return primes
コード例 #3
0
def prime_factorization(n):
	res = []
	while not(isprime(n)) and n > 1:
		for i in range(1,n):
			if prime(i) and n%i == 0:
				res.append(i)
				n/=i
	if n > 1: res.append(n)
	final = []
	for i in np.unique(np.array(res)):
		final.append(expt(i,len(filter(lambda x: x == i,res))))
	return final
コード例 #4
0
def get_prime_factors(num):
    num = num
    primes = getPrimes(100000)
    prime_factors = []
    isInList = False
    while not isprime(num):
        for i in primes:
            if num % i == 0:
                num /= i
                print num
                prime_factors.append(i)
                isInList = True
                break
        if not isInList:
            print isInList
            primes = getPrimes(len(primes) + 10)
    prime_factors.append(num)
    return prime_factors, np.max(prime_factors)
コード例 #5
0
from isPrime import isprime

under = 100000

primes = filter(lambda x: isprime(x), range(1, under))


def prime(x):
    return x in primes if x < under else False


m = 0
l = 0

lp = len(primes)

for i in reversed(range(2, lp)):
    for x in range(lp - i):
        arr = primes[x : x + i]
        s = sum(arr)
        if s < under and prime(s):
            c = len(arr)
            if c > l:
                m = s
                l = c

print m, l


#
# for i in range(len(primes)):
コード例 #6
0
import itertools
from isPrime import isprime
import time


def pandigital(x):
    return sorted([int(c) for c in str(x)]) == range(1, len(str(x)) + 1)


t = time.time()
print max(
    filter(
        lambda i: isprime(i),
        reduce(
            lambda o, k: o + k,
            [
                map(lambda x: int("".join([str(c) for c in x])), list(itertools.permutations(range(1, n + 1), r=n)))
                for n in range(1, 8)
            ],
        ),
    )
)
print time.time() - t
コード例 #7
0
import math
from isPrime import isprime
import time

primes = filter(lambda x: isprime(x),range(1,1000000))

def test(x):
	return any([math.sqrt((x-i)/2).is_integer() for i in filter(lambda c: c < x, primes)])



for i in range(1,1000000,2):
	if not(i in primes) and not(test(i)):
		print i
		break
コード例 #8
0
from isPrime import isprime

count = 1
num = 2

while(count < 10001):
	num+=1
	if(isprime(num)):
		# print num
		count+=1
	
print num
print count
コード例 #9
0
from isPrime import isprime
primes = []

for i in range(2000000):
	if isprime(i):
		primes.append(i)
print sum(primes)
コード例 #10
0
def prime(x):
	if primes.get(x):
		return primes[x]
	else:
		primes[x] = isprime(x)
		return primes[x]