6 条题解
-
0
二位前缀
#include<iostream> #include<algorithm> using namespace std; const int N=1e5+5,INF=0x3f3f3f3f; typedef long long LL; int n,x,y,v,r,ans=0; int f[9241][5780]; int main() { cin>>n>>r; int a=r,b=r; for(int i=1;i<=n;i++) { cin>>x>>y>>v; x++,y++; f[x][y]+=v; a=max(a,x);b=max(b,y); } for(int i=1;i<=a;i++)for(int j=1;j<=b;j++)f[i][j]+=f[i-1][j]+f[i][j-1]-f[i-1][j-1]; for(int i=r;i<=a;i++)for(int j=r;j<=b;j++)ans=max(ans,f[i][j]-f[i-r][j]-f[i][j-r]+f[i-r][j-r]); cout<<ans; return 0; }
信息
- ID
- 11
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 4
- 标签
- 递交数
- 427
- 已通过
- 199
- 上传者