2 条题解
-
-1
我们设p[i]指x第i小的质数的次数 根据乘法原理和加法原理,每一个质数都有p[i]+1种选法 化简一下可得 p[i]可以用质因数分解做出 然后这个题就做完了 code:
#include <bits/stdc++.h> using namespace std; vector<long long> p; long long x; void read(){ cin >> x; return ; } void compute(){ for(long long i = 2;i * i <= x; i++){ long long cnt = 0; if(x % i != 0) continue; while(x % i == 0){ cnt++; x /= i; } p.push_back(cnt); } if(x > 1) p.push_back(1ll); long long ans = 1; for(long long i = 0;i < p.size(); i++){ ans *= (p[i] + 2) * (p[i] + 1) / 2; } cout << ans; return ; } int main(){ read(); compute(); return 0; }
- 1
信息
- ID
- 6
- 时间
- 2000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- (无)
- 递交数
- 150
- 已通过
- 20
- 上传者