1 条题解
-
1昌孝阳 (changxiaoyang) LV 10 @ 2023-9-30 13:05:11
太裤啦
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; typedef long long ll; ll get_oula(int x) { ll ans = x; for(int i = 2;i <= x / i;i++) { if(x % i == 0) ans = 1ll * ans / i * (i - 1); while(x % i == 0) x /= i; } if(x > 1) ans = ans / x * (x - 1); return ans; } int main() { int n;scanf("%d",&n); ll ans = 0; for(int d = 1;d <= n / d;d++) { if(n % d == 0) { ans += 1ll * (n / d) * get_oula(d); int c = n / d; if(d != c) ans += 1ll * d * get_oula(c); } } cout << ans << endl; return 0; }
- 1
信息
- ID
- 132
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 8
- 标签
- 递交数
- 12
- 已通过
- 9
- 上传者