約數的個數

2022-06-12 03:48:13 字數 653 閱讀 7986

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

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

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

當n=0時輸入結束。

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

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

示例1

複製

5

1 3 4 6 12

複製

123

46思路:

該問題為求解乙個數num的約數個數,那麼其實只需要將i在[1, sqrt(num) ]之間遍歷,求解約數個數即可,分兩種情況考慮,如果i2=num, 則ans+1,

如果i2 != num && num % i ==0, 則ans+2

1 #include2 #include

3 #include4 #include5

6using

namespace

std;78

intmain()

9 29}

3031 cout << ans <33}

3435

36return0;

37 }

約數的個數

輸入n個整數,依次輸出每個數的約數的個數。輸入的第一行為n,即陣列的個數 n 1000 接下來的1行包括n個整數,其中每個數的範圍為 1 num 1000000000 當n 0時輸入結束。可能有多組輸入資料,對於每組輸入資料,輸出n行,其中每一行對應上面的乙個數的約數的個數。6 1 4 6 8 10...

約數的個數

題目描述 輸入n個整數,依次輸出每個數的約數的個數。輸入描述 輸入的第一行為n,即陣列的個數 n 1000 接下來的1行包括n個整數,其中每個數的範圍為 1 num 1000000000 當n 0時輸入結束。輸出描述 可能有多組輸入資料,對於每組輸入資料,輸出n行,其中每一行對應上面的乙個數的約數的...

約數的個數

對於約數個數的求法,開始我的 是逐個列舉取餘,這當然是乙個很簡單易懂的方法。但是整個程式的時間複雜度達到o n m 對於超級大的測試樣例來說,這顯然不可取。cin n個整數,cout 每乙個整數的約數個數 include include using namespace std 求約數個數 int f...