Result: Accepted
Time: 11ms
Memory: 1092kB
#include<stdio.h>
#include<stdlib.h>
struct g{
char ch[40];
int a,b,s;
};
int comp(const void*p,const void*q){
return((struct g*)q)->s-((struct g*)p)->s;
}
int main ()
{
struct g grade[100];
int t,a,b,i,p,m;
scanf("%d",&t);
while(t--)
{
scanf("%d",&a);
for(i=0;i<a;++i){
scanf("%s%d%d",grade[i].ch,&grade[i].a,&grade[i].b);
grade[i].s=grade[i].a+grade[i].b;
}
qsort(grade,a,sizeof(struct g),comp);
for(i=0;i<a;++i)
printf("%s\n",grade[i].ch);
}
return 0;
}