Result: Accepted
Time: 16ms
Memory: 1092kB
#include<stdio.h>
#include<stdlib.h>
struct stu
{
char name[31];
int li;
int shi;
int total;
};
int comp(const void *p,const void *q)
{
return ((struct stu*)q)->total-((struct stu*)p)->total;
}
int main()
{
int T,num;
int i;
scanf("%d",&T);
struct stu grade[100];
while(T--)
{
scanf("%d",&num);
for(i=0;i<num;++i)
{
scanf("%s %d %d",&grade[i].name,&grade[i].li,&grade[i].shi);
grade[i].total=grade[i].li+grade[i].shi;
}
qsort(grade,num,sizeof(struct stu),comp);
for(i=0;i<num;++i)
{
printf("%s\n",grade[i].name);
}
}
return 0;
}