#include<cstdio>
#include<algorithm>
#include<stdlib.h>
#include<cstring>
using namespace std;
struct people
{
char id[10];
int talent;
int virtue;
int c;
}pe[100010];
bool cmp(people st1,people st2)
{
if(st1.c!=st2.c)
return st1.c>st2.c;
else if((st1.talent+st1.virtue)!=(st2.talent+st2.virtue))
return (st1.talent+st1.virtue)>(st2.talent+st2.virtue);
else if((st1.talent+st1.virtue)==(st2.talent+st2.virtue))
{
if(st1.virtue!=st2.virtue)
return st1.virtue>st2.virtue;
else
return strcmp(st1.id,st2.id)<0;
}
}
int main()
{
int n,L,H,sum=0;
scanf("%d%d%d",&n,&L,&H);
for(int i=0;i<n;i++)
{
scanf("%s %d %d",pe[i].id,&pe[i].virtue,&pe[i].talent);
pe[i].c=0;
if(pe[i].virtue>=L&&pe[i].talent>=L)
{
if(pe[i].virtue>=H&&pe[i].talent>=H)
{
pe[i].c=4;
}
else if(pe[i].virtue>=H&&pe[i].talent<=H)
{
pe[i].c=3;
}
else if(pe[i].virtue<=H&&(pe[i].virtue>=pe[i].talent))
{
pe[i].c=2;
}
else
pe[i].c=1;
sum++;
}
}
sort(pe,pe+n,cmp);
printf("%d\n",sum);
for(int i=0;i<sum;i++)
{
printf("%s %d %d\n",pe[i].id,pe[i].virtue,pe[i].talent);
}
system("pause");
return 0;
}
PAT 1062
最新推荐文章于 2020-11-11 20:34:25 发布