求助卡常/优化时间

P2119 [NOIP2016 普及组] 魔法阵

合理怀疑复杂度本身过不了
by 子丑 @ 2021-10-14 15:05:15


``` #include<bits/stdc++.h> using namespace std; int num[15008], x[40008], v[40010][5]; int main() { int n, m; cin>>n>>m; for (int i=1; i<=m; i++) { cin>>x[i]; num[x[i]]++; } for (int w=1; w*9<n; w++) { int sum=0; int a, b, c, d; for (d=w*9+2; d<=n; d++) { a=d-9*w-1; b=d-7*w-1; c=d-w; sum+=num[b]*num[a]; v[c][3]+=num[d]*sum; v[d][4]+=num[c]*sum; } sum=0; for (a=n-w*9-1; a>=1; a--) { b=a+2*w; c=a+w*8+1; d=a+w*9+1; sum+=num[c]*num[d]; v[a][1]+=num[b]*sum; v[b][2]+=num[a]*sum; } } for (int i=1; i<=m; i++) { for (int j=1; j<=4; j++) { cout<<v[x[i]][j]<<" "; } cout<<endl; } return 0; } ``` 正确代码
by ZZYTCCBS @ 2022-05-14 18:09:30


|