90求调
查看原帖
90求调
1259734
shenxiangxin楼主2025/8/1 10:05
#include<bits/stdc++.h>
using namespace std;
int n,m;
int a[5010][5010];
long long dp[5010][5010];
int main()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++)
	{
		int x,y,z;
		cin>>x>>y>>z;
		x++;
		y++;
		a[x][y]=z;
	}
	for(int i=1;i<=5000;i++)
	{
		for(int j=1;j<=5000;j++)
		{
			dp[i][j]=dp[i-1][j]+dp[i][j-1]-dp[i-1][j-1]+a[i][j];
		}
	}
	long long mx=0;
	for(int i=m;i<=5000;i++)
	{
		for(int j=m;j<=5000;j++)
		{
			mx=max(mx,dp[i][j]-dp[i-m][j]-dp[i][j-m]+dp[i-m][j-m]);
		}
	}
	cout<<mx<<endl;
	return 0;
}
2025/8/1 10:05
加载中...