вынес primes в utils
parent
8d511b82fc
commit
62138fab43
|
@ -1,2 +1,3 @@
|
|||
__pycache__
|
||||
var61.txt
|
||||
var61.txt
|
||||
dixon.py
|
|
@ -1,18 +1,7 @@
|
|||
# (p-1)-алгоритм Полларда, реализация _rho_minus_1_pollard из интернета
|
||||
import time
|
||||
from math import gcd
|
||||
from utils import is_prime
|
||||
|
||||
def primes(B):
|
||||
primes_list = []
|
||||
is_prime = [True] * (B + 1)
|
||||
is_prime[0] = is_prime[1] = False
|
||||
for p in range(2, B + 1):
|
||||
if is_prime[p]:
|
||||
primes_list.append(p)
|
||||
for i in range(p * p, B + 1, p):
|
||||
is_prime[i] = False
|
||||
return primes_list
|
||||
from utils import is_prime, primes
|
||||
|
||||
def _rho_minus_1_pollard(n,
|
||||
B_start=100,
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# (p-1)-алгоритм Полларда, реализация _rho_minus_1_pollard по алгосу из презентации препода
|
||||
import time
|
||||
from math import gcd, log as ln
|
||||
from utils import is_prime
|
||||
from utils import is_prime, primes
|
||||
import random
|
||||
|
||||
log = []
|
||||
|
@ -10,17 +10,6 @@ def logger(i, p, l, b):
|
|||
if len(log) > 10: log = log[:5] + log[-5:]
|
||||
log.append(f'iter = {i}, p_i = {p}, l_i = {l}, B = {b}')
|
||||
|
||||
def primes(B):
|
||||
primes_list = []
|
||||
is_prime = [True] * (B + 1)
|
||||
is_prime[0] = is_prime[1] = False
|
||||
for p in range(2, B + 1):
|
||||
if is_prime[p]:
|
||||
primes_list.append(p)
|
||||
for i in range(p * p, B + 1, p):
|
||||
is_prime[i] = False
|
||||
return primes_list
|
||||
|
||||
def _rho_minus_1_pollard(n,
|
||||
B_start=100,
|
||||
B_step=10,
|
||||
|
|
13
utils.py
13
utils.py
|
@ -16,4 +16,15 @@ def is_prime(N):
|
|||
x = pow(x, 2, N)
|
||||
if x == N - 1: break
|
||||
else: return False
|
||||
return True
|
||||
return True
|
||||
|
||||
def primes(B):
|
||||
primes_list = []
|
||||
is_prime = [True] * (B + 1)
|
||||
is_prime[0] = is_prime[1] = False
|
||||
for p in range(2, B + 1):
|
||||
if is_prime[p]:
|
||||
primes_list.append(p)
|
||||
for i in range(p * p, B + 1, p):
|
||||
is_prime[i] = False
|
||||
return primes_list
|
Loading…
Reference in New Issue