#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
struct Student{
long kaohao;
int de,cai,sum;
int falg=5;
};
bool cmp(Student a,Student b){
if(a.falg!=b.falg)
return a.falg<b.falg;
else if(a.sum!=b.sum)
return a.sum>b.sum;
else if(a.de!=b.de)
return a.de>b.de;
else
return a.kaohao<b.kaohao;
}
int main(){
int num,L,H;
int count=0;
cin>>num>>L>>H;
Student stu[num];
for(int i=0;i<num;i++){
cin>>stu[i].kaohao>>stu[i].de>>stu[i].cai;
if(stu[i].de<L||stu[i].cai<L)
continue;
else
count++;
if(stu[i].de>=H&&stu[i].cai>=H){
stu[i].sum=stu[i].de+stu[i].cai;
stu[i].falg=1;
}
else if(stu[i].de>=H&&stu[i].cai<H&&stu[i].cai>=L){
stu[i].sum=stu[i].de+stu[i].cai;
stu[i].falg=2;
}
else if(stu[i].de<H&&stu[i].cai<H&&stu[i].de>=stu[i].cai){
stu[i].sum=stu[i].de+stu[i].cai;
stu[i].falg=3;
}
else {
stu[i].sum=stu[i].de+stu[i].cai;
stu[i].falg=4;
}
}
sort(stu,stu+num,cmp);
cout<<count<<endl;
for(int i=0;i<count;i++){
cout<<stu[i].kaohao<<" "<<stu[i].de<<" "<<stu[i].cai<<endl;
}
return 0;
}
思路运用开始输入就进行分类,用falg标注5种状态,利用结构体存储数据,主要就是要理解题意,做好排序,就可以了。