《演算法筆記》系列 Problem D 約數的個數

2021-09-13 08:10:35 字數 715 閱讀 2455

輸入n個整數,依次輸出每個數的約數的個數。

輸入的第一行為n,即陣列的個數(n<=1000)

接下來的1行包括n個整數,其中每個數的範圍為(1<=num<=1000000000)

當n=0時輸入結束。

可能有多組輸入資料,對於每組輸入資料,

輸出n行,其中每一行對應上面的乙個數的約數的個數。

6

1 4 6 8 10 12

0

134

446

#define _crt_secure_no_warnings

#include #include #include #include #include #include #include #include using namespace std;

#define nmax 100000

int prime[nmax];

int num;//num:質數列表的長度

bool nop[nmax];

#define len 100

void find_prime_table(int n)}}

}struct factorf[len];

int main()

int ans=1;

for(int i=0;iprintf("%d\n",ans);}}

return 0;

}

蒙哥馬利約減演算法

我們需要求t mod n 的結果,設蒙哥馬利約減演算法為f,可以做到f x x times r mod n r為進製數或進製數的冪次,在計算機當中,設n的2進製位數為s,r可以取2 s,且與n互質 比如2進製數,r 2 10進製數,r 10 2 30 進製,r 2 30 如此這樣,某個r進製的數乘除...

演算法課筆記系列(二) 貪心演算法

貪心演算法就是一種非常直觀的演算法,對於乙個問題,只關心它目前最優的解決方案,不考慮未來的發展。但往往,這種只考慮現在的演算法就是最優的演算法。第一步將問題分為可分的一步一步,第二步對每一步進行當前的最優計算,第三部將得到的結果最優,往往是得到的全域性最優的結果。下面還是通過課上講解的幾個例子來深入...

acwing演算法基礎課 演算法競賽高階指南 約數

首先考慮分解質因數的演算法 在列舉因子時,不停將x除以i直到x不是i的倍數,這樣每列舉到乙個合數i,x中所有i的因子都已經被除掉了,i不可能成為x的因子。這樣,保證了滿足第六行x i 0的i一定是質因數,順便統計出了每個質因數的指數。有乙個顯然的結論 x中至多有乙個大於 sqrt 的質因子,而且它的...