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