洛谷 P1403 [AHOI2005]约数研究
思路:Kelin的题解
代码(自己的丑代码)
#include <iostream> #include <cstdio> int main(){ int n; long long ans = 0; scanf("%d", &n); for(int i = 1; i <= n; ++i) { ans += n/i; } printf("%lld\n", ans); return 0; } 以及优化后
#include <iostream> #include <cstdio> int main(){ int n; long long ans = 0; scanf("%d", &n); for(int i = 1, j; i <= n; i = j+1) { j = n / (n/i); ans += (n/i) * (j-i+1); } printf("%lld\n", ans); return 0; } 来源:51CTO
作者:Mintind
链接:https://blog.csdn.net/Mintind/article/details/100622449