#include using namespace std; map mx,my; vector> ls[402]; int main(){ int n,b; cin>>n>>b; int x[n],y[n],p[n]; for(int i=0;i>x[i]>>y[i]>>p[i],mx[x[i]]=my[y[i]]=0; mx[(1<<30)]=mx[-(1<<30)]=my[(1<<30)]=my[-(1<<30)]=0; int cnt=0; for(auto it=mx.begin();it!=mx.end();it++) it->second=cnt++; cnt=0; for(auto it=my.begin();it!=my.end();it++) it->second=cnt++; for(int i=0;ifirst]&&mx[it->first]<=x2) point+=it->second,tmp++; } while(point>b){ for(auto it=ls[y1].begin();it!=ls[y1].end();it++){ if(x1<=mx[it->first]&&mx[it->first]<=x2) point-=it->second,tmp--; } y1++; } ans=max(ans,tmp); } } } cout<