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