Result: Accepted
Time: 12ms
Memory: 1092kB
#include<stdio.h>
#include<stdlib.h>
struct student
{
char name[30];
int lilun;
int shijian;
int zong;
};
int comp(const void *p,const void *q)
{
if(((struct student * )q)->zong!=((struct student *)p)->zong)
return ((struct student * )q)->zong - ((struct student *)p)->zong;
}
void main()
{
struct student chengji[200];
int t;
scanf("%d",&t);
while(t--)
{
int n,i;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s %d %d",&chengji[i].name,&chengji[i].lilun,&chengji[i].shijian);
chengji[i].zong=chengji[i].lilun+chengji[i].shijian;
}
qsort(chengji,n,sizeof(struct student),comp);
for(i=0;i<n;i++)
{
printf("%s\n",chengji[i].name);
}
}
}