题目描述
求正整数N(N>1)的质因数的个数。 相同的质因数需要重复计算。如120=2*2*2*3*5,共有5个质因数。
链接:https://www.nowcoder.com/questionTerminal/20426b85f7fc4ba8b0844cc04807fbd9
来源:牛客网
#include<stdio.h>
#include<math.h>
int main(){
long x,i;
while(scanf("%ld",&x)!=EOF){
int cnt=0;
long a=(long)sqrt(x);
for(i=2;i<=a;i++)
while(x%i==0){
cnt++;
x/=i;
}
printf("%d\n",x>1?cnt+1:cnt);
}
}