#include <iostream>
#include <cstdio>
using namespace std;
int n,m,map[5005][5005],ans;
int main()
{
cin >> n >> m;
for(int x,y,v,i=0;i < n;++i)
{
cin >> x >> y >> v;
map[x+1][y+1]=v;
}
for(int i = 1;i <= 5001;++i)
for(int j = 1;j <= 5001;++j)
map[i][j]=map[i-1][j]+map[i][j-1]-map[i-1][j-1]+map[i][j];
m=min(m,5001);
for(int i=2;i<=5005;i++){
map[1][i]+=map[1][i-1];
map[i][1]+=map[i-1][1];
}
for(int i = 1;i <= 5001-m;++i)
for(int j = 1;j <= 5001-m;++j)
ans=max(ans,map[i+m][j+m]-map[i][j+m]-map[i+m][j]+map[i][j]);
cout << ans << endl;
return 0;
}
我一直看不出来问题,麻烦dalao帮忙看一下