91pts巨佬们求调orz
#include<bits/stdc++.h>
#define MAXN 0x3f3f3f3f
using namespace std;
inline int read(){
char c;
int f=1,x=0;
c=getchar();
while(!isdigit(c)){
if(c=='-') f=-1;
c=getchar();
}
while(isdigit(c)){
x=(x<<3)+(x<<1)+int(c-48);
c=getchar();
}
return f*x;
}
int n,m,maxx=-MAXN,maxy=-MAXN,minx=MAXN,miny=MAXN,maxt=INT_MIN;
int a[5007][5007],suma[5007][5007];
int main(){
n=read(),m=read();
for(int i=1;i<=n;i++){
int x=read(),y=read(),v=read();
a[x][y]=v;
maxx=max(maxx,x);
maxy=max(maxy,y);
}
++maxx;++maxy;
suma[0][0]=a[0][0];
for(int i=1;i<=maxx;i++) suma[i][0]=suma[i-1][0]+a[i][0];
for(int i=1;i<=maxy;i++) suma[0][i]=suma[0][i-1]+a[0][i];
for(int i=1;i<=maxx;i++){
for(int j=1;j<=maxy;j++) suma[i][j]=suma[i-1][j]+suma[i][j-1]-suma[i-1][j-1]+a[i][j];
}
for(int i=0;i<=maxx;i++){
for(int j=0;j<=maxy;j++){
int x=max(0,i-m),y=max(0,j-m);
maxt=max(maxt,suma[i][j]-suma[x][j]-suma[i][y]+suma[x][y]);
}
}
cout<<maxt;
}