blob: 638c87c82ff19683266582ff969940b962cfb593 (
plain)
1
2
3
4
5
6
7
8
9
10
11
|
ll countDivisors(ll n) {
ll res = 1;
for (ll i = 2; i * i * i <= n; i++) {
ll c = 0;
while (n % i == 0) {n /= i; c++;}
res *= c + 1;
}
if (isPrime(n)) res *= 2;
else if (n > 1) res *= isSquare(n) ? 3 : 4;
return res;
}
|