Python 大数的素数因子(150位数字)
我有一个非常大的数Python 大数的素数因子(150位数字),python,prime-factoring,largenumber,factorization,Python,Prime Factoring,Largenumber,Factorization,我有一个非常大的数51014375875509025530880200653196460532653147,我想从中获得python中的主要因子(或至少两个最大因子)。我试过几种代码,但它们运行了很长时间,没有完成。所以我在问,有没有什么快速的方法或者至少是一种方法来计算这么大的数的素数因子 PS:例如,我使用的一个代码 def prime_factors(n): i = 2 factors = [] while i * i <= n: if n %
51014375875509025530880200653196460532653147
,我想从中获得python中的主要因子(或至少两个最大因子)。我试过几种代码,但它们运行了很长时间,没有完成。所以我在问,有没有什么快速的方法或者至少是一种方法来计算这么大的数的素数因子
PS:例如,我使用的一个代码
def prime_factors(n):
i = 2
factors = []
while i * i <= n:
if n % i:
i += 1
else:
n //= i
factors.append(i)
if n > 1:
factors.append(n)
return factors
def基本因子(n):
i=2
因子=[]
而i*i 1:
因子。追加(n)
回报率
找到了使用此网页的方法,只要有人需要。
我在手机上使用了PariDroid;它在一个实例中完成了因式分解
factor(510143758735509025530880200653196460532653147) =
19704762736204164635843 * 25889363174021185185929
@这是错误的,有更快的方法可以做到这一点,看看这个:非常感谢你,我来看看!好的,我在结尾处找到了一个页面:@khelwood使用我得到的msieve软件:
19704762736204164635843*25889317402118555929=51014375873555090255308800200653196460532653147
instant我有一个python库,可以用来在ipython3中计算这些数字。它使用Alpertons ECM SIQS引擎:它甚至可以在android上的termux下工作