#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
struct richman{
char name[15];
int age;
int worth;
}man[100005];
struct queryman{
int num;
int Amin,Amax;
}Q[1005];
bool cmp(richman a,richman b){
if(a.worth!=b.worth) return a.worth>b.worth;
else if(a.age!=b.age) return a.age<b.age;
else if(strcmp(a.name,b.name)!=0) return strcmp(a.name,b.name)<0;
}
int main(int argc, char** argv) {
int n,k;
scanf("%d%d",&n,&k);
for(int i=0;i<n;i++) scanf("%s %d %d",man[i].name,&man[i].age,&man[i].worth);
for(int i=0;i<k;i++) scanf("%d %d %d",&Q[i].num,&Q[i].Amin,&Q[i].Amax);
sort(man,man+n,cmp);
for(int i=1;i<=k;i++){
printf("Case #%d:\n",i);
// for(int u=0;u<Q[i-1].num;u++){
int count=0;
for(int j=0;j<n;j++){ //output
if(man[j].age>=Q[i-1].Amin && man[j].age<=Q[i-1].Amax){
printf("%s %d %d\n",man[j].name,man[j].age,man[j].worth);
count++;
if(count>=Q[i-1].num) break;
}
}
if(count==0) printf("None\n");
// }
}
return 0;
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
struct richman{
char name[15];
int age;
int worth;
}man[100005];
struct queryman{
int num;
int Amin,Amax;
}Q[1005];
bool cmp(richman a,richman b){
if(a.worth!=b.worth) return a.worth>b.worth;
else if(a.age!=b.age) return a.age<b.age;
else if(strcmp(a.name,b.name)!=0) return strcmp(a.name,b.name)<0;
}
int main(int argc, char** argv) {
int n,k;
scanf("%d%d",&n,&k);
for(int i=0;i<n;i++) scanf("%s %d %d",man[i].name,&man[i].age,&man[i].worth);
for(int i=0;i<k;i++) scanf("%d %d %d",&Q[i].num,&Q[i].Amin,&Q[i].Amax);
sort(man,man+n,cmp);
for(int i=1;i<=k;i++){
printf("Case #%d:\n",i);
// for(int u=0;u<Q[i-1].num;u++){
int count=0;
for(int j=0;j<n;j++){ //output
if(man[j].age>=Q[i-1].Amin && man[j].age<=Q[i-1].Amax){
printf("%s %d %d\n",man[j].name,man[j].age,man[j].worth);
count++;
if(count>=Q[i-1].num) break;
}
}
if(count==0) printf("None\n");
// }
}
return 0;
}