文章
1
粉丝
18
获赞
3
访问
205
#include <bits/stdc++.h>
using namespace std;
int main() {
long long int n;
while (cin >> n) {
int c = 0;
// 从最小的质数 2 开始尝试,不需要判断i是否为质数。因为从 2 开始除,第一个能整除的数必然是质数。
for (long long i = 2; i * i <= n; i++) {
while (n % i == 0) {
c++;
n /= i;
}
}
// 如果 n 仍然大于 1,说明 n 本身是一个质数
if (n > 1) {
c++;
}
cout << c << endl;
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发