对边界的一些疑惑
查看原帖
对边界的一些疑惑
1085779
duanhongwen楼主2024/10/21 19:32
#include<bits/stdc++.h>
using namespace std;
const int M=5e3+7;
int s[M][M],n,m;
int main()
{
	cin>>n>>m;
	int maxx=INT_MIN,maxy=INT_MIN;
	for(int i=1;i<=n;i++)
	{
		int x,y,v;
		cin>>x>>y>>v;
		x++,y++;
		s[x][y]+=v;
		//maxx=max(maxx,x);
		//maxy=max(maxy,y);
	}
	for(int i=1;i<=5001;i++)
	{
		for(int j=1;j<=5001;j++)
		{
			s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+s[i][j];
		}		
	}
	int maxv=INT_MIN;
	for(int i=1;i+m-1<=5001;i++)
	{
		for(int j=1;j+m-1<=5001;j++)
		{
			maxv=max(maxv,s[i+m-1][j+m-1]-s[i+m-1][j-1]-s[i-1][j+m-1]+s[i-1][j-1]);
		}
	}
	cout<<maxv;
}
2024/10/21 19:32
加载中...