質因數的個數(王道)

2022-06-24 11:06:11 字數 862 閱讀 5819

求正整數n(n>1)的質因數的個數。 

相同的質因數需要重複計算。如120=2*2*2*3*5,共有5個質因數。

可能有多組測試資料,每組測試資料的輸入是乙個正整數n,(1< n< 10^9)。

對於每組資料,輸出n的質因數的個數。

120
5

#include #include

#include

#include

using

namespace

std;

bool mark[100001];//

標記數字是否為素數,如果為true,則為非素數

int prime[100001];//

儲存篩得的素數

int primesize;//

儲存素數個數

void

init()

}int

main()

anssize++;//

素因數個數增加

if(n == 1)//

若已經被分解成1,則分解提前終止

break

; }

}if(n != 1)

int ans = 0

;

for(int i=0;i)

ans += ansnum[i];//

統計各個素因數的冪指數

printf("%d"

,ans);

return0;

}

總結:學會遍歷篩選素數。這其中有個部分,j=i*i為開始,是因為i*k(k

質因數的個數

求正整數n n 1 的質因數的個數。相同的質因數需要重複計算。如120 2 2 2 3 5,共有5個質因數。可能有多組測試資料,每組測試資料的輸入是乙個正整數n,1對於每組資料,輸出n的質因數的個數。12020055注意1不是n的質因數 若n為質數,n是n的質因數。include include c...

質因數的個數

求正整數n n 1 的質因數的個數。相同的質因數需要重複計算。如120 2 2 2 3 5,共有5個質因數。可能有多組測試資料,每組測試資料的輸入是乙個正整數n,1示例1 120 5 pat.cpp 定義控制台應用程式的 include stdafx.h include stdio.h includ...

質因數的個數

求正整數n n 1 的質因數的個數。相同的質因數需要重複計算。如120 2 2 2 3 5,共有5個質因數。輸入描述 可能有多組測試資料,每組測試資料的輸入是乙個正整數n,1 輸出描述 對於每組資料,輸出n的質因數的個數。示例1 1205import math def judge num 判斷是否是...