Result: Accepted
Time: 20ms
Memory: 1092kB
#include<stdio.h>
#include<string.h>
struct student{
char name[30];
int totalscore;
};
int main(void){
int T,N;
int li,shi;
scanf("%d",&T);
while(T--){
scanf("%d\n",&N);
struct student stud[N];
for(int i=0;i<N;i++){
scanf("%s",stud[i].name );
scanf("%d%d",&li,&shi);
stud[i].totalscore =li+shi;
}
int tempscore;
char tempname[30];
for(int pass=1;pass<N;pass++){
for(int i=0;i<N-pass;i++){
if(stud[i].totalscore <stud[i+1].totalscore ){
tempscore=stud[i].totalscore;
stud[i].totalscore=stud[i+1].totalscore;
stud[i+1].totalscore=tempscore;
strcpy(tempname,stud[i].name);
strcpy(stud[i].name ,stud[i+1].name) ;
strcpy(stud[i+1].name ,tempname);
}
}
}
for(int i=0;i<N;i++)printf("%s\n",stud[i].name );
}
return 0;
}