思路:
找数学规律。规律: 一直除以从小到大的质数,直到不能除为止(以2024为例)
代码:
#include <bits/stdc++.h>
using namespace std;
int main() {
long long n;
cin >> n;
int ans = 0;
for (int i = 2; i <= sqrt(n); i++) { 、
// 为了避免超时,又因为因数的特性,所以只用到根号即可,大于根号的就是最后一个因数,
// 在最后面加上就好
if (n % i == 0) {
ans += 1;
while (n % i == 0) {
n /= i;
}
}
}
ans += 1;
cout << ans;
return 0;
}
知识点:
数学,找规律