萌新发问
查看原帖
萌新发问
1643422
Whitehorse819楼主2025/2/3 15:20
#include<bits/stdc++.h>
using namespace std;
int x,y,v,a[5002][5002],s[5022][5022],n,m;
int main()
{
	cin>>n>>m;
	for (int i=1;i<=n;i++)
	{
		cin>>x>>y>>v;
		s[x+1][y+1]=v;//为什么这么写不对?一定要写+=才对?
	}
	s[1][1]=a[1][1];
	for (int i=1;i<=5001;i++)
	for (int j=1;j<=5001;j++)
	{
		if (i!=1||j!=1)
		s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+s[i][j];
	}
	int ans=-1;
	for (int i=m;i<=5001;i++)
	for (int j=m;j<=5001;j++)
	{
		int num=s[i][j]-s[i-m][j]-s[i][j-m]+s[i-m][j-m];
		ans=max(ans,num);
	}
	cout<<ans<<endl;
	return 0;
}
2025/2/3 15:20
加载中...