1 条题解
-
0
C++ :
#include <iostream> #include <vector> #include <cmath> using namespace std; const int MAX_N = 1e3 + 9; long long n; int sum; int cal(int x) //把x进行拆分 1 + 2 + 3 ...... { int p = 1 , num = 0; while(x >= p) { num++; x -= p; p++; } return num; } int main() { cin >> n; for(long long i = 2; i * i <= n; i++) { if(n % i == 0) //i为n的因子 { int cnt = 0; while(n % i == 0) { cnt++; n /= i; } sum += cal(cnt); } } if(n != 1) sum += cal(1); cout << sum; return 0; }
- 1
信息
- ID
- 5646
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者