#include<bits/stdc++.h>using namespace std;int a[1005][1005];int dx[]={-1,-1,-1,0,0,1,1,1},dy[]={-1,0,1,-1,1,-1,0,1};intmain(){ int m,n,h,x; cin>>m>>n>>h; for(int i=1;i<=m;i++){ for(int j=1;j<=n;j++){ cin>>x; a[i][j]=x; } } int maxx,minx,sum,ans=0; for(int i=2;i<=m-1;i++){ for(int j=2;j<=n-1;j++){ maxx=minx=sum=a[i][j]; for(int k=0;k<8;k++){ sum+=a[i+dx[k]][j+dy[k]]; if(maxx<a[i+dx[k]][j+dy[k]]) maxx=a[i+dx[k]][j+dy[k]]; if(minx>a[i+dx[k]][j+dy[k]]) minx=a[i+dx[k]][j+dy[k]]; } if(maxx-minx<=h && sum>ans){ ans=sum; } } } cout<<ans; return 0;}
#include <bits/stdc++.h>using namespace std;struct store{ string s; int p,v;}a[1005],b[1005];boolcmp1(store x,store y){ if(x.v<y.v) return true; else if(x.v==y.v && x.p<y.p){ return true; }else if(x.v==y.v && x.p==y.p && x.s<y.s){ return true; }else return false;}boolcmp2(store x,store y){ return x.s<y.s;}intmain() { int m,n; cin>>m>>n; for(int i=1;i<=n;i++) cin>>a[i].s>>a[i].p>>a[i].v; sort(a+1,a+n+1,cmp1); int k=1; for(int i=1;i<=n;i++){ if(m-a[i].p>=0) { b[k]=a[i]; m-=a[i].p; k++; } } sort(b+1,b+k,cmp2); for(int i=1;i<k;i++){ cout<<b[i].s<<endl; } return 0;}