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