n = 600851475143
i = 2
while i * i < n:
while n%i == 0:
n = n/i
i = i + 1
print (n)
這是一個在python中查找任何給定數字的最大素數因子的程序。我想知道是否有辦法對其進行修改,以便能夠找到所有主要因素,而不僅僅是最大的因素。我在想,因爲這個程序是快速和整潔的,有沒有辦
所以我對Python很新,想知道爲什麼這些代碼不適用於某些數字。 (例如,12和60)(編輯:它只是說一個因素,那就是不是素數有12個是4,和60是12) def Prime(var):
for n in range(var-1, 1, -1):
if var % n == 0:
for x in range(2, n):
if n % x ==
有一個python實施代碼素因子分解。返回答案花費了大約0.1秒。我實施了php。大量它運行大約3秒(有時它永遠不會返回答案) 注:我甚至使用BCMath函數在PHP中處理非常大的數字。 注:此功能(如下所述)內的所有其他功能,都單獨進行測試,但在他們(pollard_brent)使用內置函數gmp_mod PHP的一個問題。當我運行此: // python handles these big n
我想了解創建有效的素因子分解算法的問題是什麼。具體來說,我迄今爲止所做的研究表明,目前還沒有發現能找到O(n爲)時間的主要因素的算法。然而,顯而易見的算法對我來說是一樣的東西(僞) method(int number, ArrayList<int> listOfPrimes)
{
int x = 0;
for (int i : listOfPrimes)
{