Result: Accepted
Time: 21ms
Memory: 1176kB
#include<stdio.h>
#include<math.h>
#include<string.h>
struct student {
char name[200];
int A,B;
};
int main ()
{
struct student a[1000],change;
int T,m,i,j;
scanf("%d",&T);
while(T--)
{
scanf("%d",&m);
for(i=0;i<=m-1;++i)
{
scanf("%s %d %d",&a[i].name,&a[i].A,&a[i].B);
}
for(j=0;j<=m-2;++j)
{
for(i=0;i<=m-2;++i)
{
if((a[i].A+a[i].B)<(a[i+1].A+a[i+1].B))
{
change=a[i];
a[i]=a[i+1];
a[i+1]=change;
}
}
}
for(i=0;i<=m-1;++i)
{
if(i!=m-1)
printf("%s\n",a[i].name);
else
printf("%s",a[i].name);
}
printf("\n");
}
return 0;
}