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