找規律發現\( f[i]=f[i-1]+n-\sum_{i的因數和} \)一A了深(sh)藍(ui)題的我被找規律綠題卡死
記得開long longios
#include<iostream> #include<cstdio> using namespace std; const int N=1000005; long long n,sum[N],f[N]; int main() { ios::sync_with_stdio(false); scanf("%lld",&n); for(long long i=1;i<=n;i++) for(long long j=i;j<=n;j+=i) sum[j]+=i; f[1]=n-1; for(long long i=2;i<=n;i++) f[i]=f[i-1]+n-sum[i]; for(long long i=1;i<=n;i++) printf("%lld ",f[i]); return 0; }