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