题目描述
求正整数N(N>1)的质因数的个数。 相同的质因数需要重复计算。如120=2*2*2*3*5,共有5个质因数。
输入描述:
可能有多组测试数据,每组测试数据的输入是一个正整数N,(1<N<10^9)。
输出描述:
对于每组数据,输出N的质因数的个数。
示例1
输入
120
输出
5
1 #include<iostream>
2 #include<algorithm>
3 #include<cmath>
4 using namespace std;
5 int main()
6 {
7 int n;
8 while(cin>>n){
9 int sum=0;
10 for(int i=2;i<=sqrt(n);i++){
11 while(n%i==0){
12 sum++;
13 n/=i;
14 }
15 }
16 if(n>1) cout<<sum+1<<endl;
17 else cout<<sum<<endl;
18 }
19 return 0;
20 }
来源:https://www.cnblogs.com/shixinzei/p/8067711.html