题目描
求正整数N(N>1)的质因数的个数。相同的质因数需要重复计算。如120=2*2*2*3*5,共有5个质因数。
输入描述:
可能有多组测试数据,每组测试数据的输入是一个正整数N,(1<N<10^9)。
输出描述:
对于每组数据,输出N的质因数的个数。
示例1
输入
120
输出
5
#include<stdio.h> #include<math.h> int main() { int n; while(scanf("%d",&n)!=EOF) { int m=n,t=0; for(int i=2;i<=sqrt(m);i++) { while(m%i==0) { m=m/i; t++; } } printf("%d",m>1?t+1:t); } }