#include <iostream>
using namespace std;
long sums[5010][5010] = {0};
int max(int a,long b){
if(a<b) return b;
else return a;
}
int main(){
int n,m;
cin >> n >> m;
for(int i=0;i<n;i++){
int x,y,v;
cin >> x >> y >> v;
sums[x+1][y+1]=v;
}
for(int i=1;i<=5001;i++){
for(int j=1;j<=5001;j++){
sums[i][j]+=sums[i-1][j]+sums[i][j-1]-sums[i-1][j-1];
}
}
int ans=0;
for(int i=m;i<=5001;i++){
for(int j=m;j<=5001;j++){
ans=max(ans,sums[i][j]-sums[i-m][j]-sums[i][j-m]+sums[i-m][j-m]);
}
}
cout << ans;
}
代码如上