Result: Accepted
Time: 4ms
Memory: 1124kB
#include <stdio.h>
struct Nickname
{
char name[21];
int sum;
}a[110];
void exchange(struct Nickname *x,struct Nickname *y)
{
struct Nickname z;
z=*x;
*x=*y;
*y=z;
}
int main() {
int T,m,i,j;
void exchange(struct Nickname *x,struct Nickname *y);
scanf("%d",&T);
while(T--)
{
scanf("%d",&m);
for(i=0;i<m;i++)
{
scanf("%s %d",a[i].name,&a[i].sum);
}
for (j=0; j< m-1; j++)
{
for (i=0; i<m -1 -j; i++)
{
if(a[i].sum<a[i + 1].sum)
{
exchange(&a[i],&a[i+1]);
}
}
}
for(i=0;i<m;i++)
{
printf("%s\n",a[i].name);
}
}
return 0;
}