190507 約數個數

2021-09-21 12:57:47 字數 639 閱讀 7626

題目描述

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

輸入描述:

輸入的第一行為n,即陣列的個數(n<=1000) 接下來的1行包括n個整數,其中每個數的範圍為(1<=num<=1000000000)

當n=0時輸入結束。

輸出描述:

可能有多組輸入資料,對於每組輸入資料, 輸出n行,其中每一行對應上面的乙個數的約數的個數。

示例1

輸入

5

1 3 4 6 12

輸出

123

46

**:

#include using namespace std;

int ysnum(int num)

{ int sum=0;

int i=1;

for( i=1;i*i>n)

{for(int i=0;i>num;

x=ysnum(num);

cout《知識點:

注意點 :

約數個數 約數之和

給乙個數n,求它的約數個數 因為n可以唯一分解成質因數的乘積即 n p 1 p 2 p t 所以n的約數c的形式應該是 c p 1 p 2 p t 對於任何兩組不同的 beta 1,beta t 的取值,由算數基本定理得c是不同的,由於 beta i 的取值為 0,1,alpha i 共 alpha...

約數個數定理

編輯 對於乙個大於1正整數n可以 分解質因數 則n的 正約數的個數就是 其中a 1 a2 a 3 ak是p 1 p2 p 3,p k的指數。編輯首先同上,n可以 分解質因數 n p1 a1 p2 a2 p3 a3 pk ak,由約數定義可知p1 a1的約數有 p1 0,p1 1,p1 2.p1 a1...

數論 約數個數

這題是個大水題,只不過資料稍微大了點。結果大家都用那啥的模擬。結果哈哈哈哈哈哈。求a b之間每個數的約數個數的總和。input 一行兩個正整數a b,以乙個空格隔開。output 一行乙個整數,即答案。資料範圍 對於50 的資料,1 a b 1000 對於100 的資料,1 a b 10,000,0...