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