99. 激光炸弹二维前缀和
Posted 辉小歌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了99. 激光炸弹二维前缀和相关的知识,希望对你有一定的参考价值。
#include<bits/stdc++.h>
using namespace std;
const int N=5010;
int a[N][N],n,r;
int main(void)
cin>>n>>r;
r=min(r,5000);
while(n--)
int x,y,w; cin>>x>>y>>w;
a[x+1][y+1]+=w;
for(int i=1;i<=5000;i++)
for(int j=1;j<=5000;j++)
a[i][j]+=a[i-1][j]+a[i][j-1]-a[i-1][j-1];
int ans=0;
for(int i=r;i<=5000;i++)
for(int j=r;j<=5000;j++)
int x=i-r+1,y=j-r+1;
int xx=i,yy=j;
int sum=a[xx][yy]-a[x-1][yy]-a[xx][y-1]+a[x-1][y-1];
ans=max(ans,sum);
cout<<ans;
return 0;
以上是关于99. 激光炸弹二维前缀和的主要内容,如果未能解决你的问题,请参考以下文章