Result: Accepted
Time: 4ms
Memory: 1120kB
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
struct ch
{
char name[21];
int cishu;
};
int main(void)
{
int t,n,i,j,temp;char xxx[21];
struct ch x[101];
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
for(i=0;i<n;++i)scanf("%s %d",x[i].name,&x[i].cishu);
for(i=1;i<n;++i)
{
for(j=0;j<n-i;++j)
{
if(x[j].cishu<x[j+1].cishu)
{
temp=x[j].cishu;x[j].cishu=x[j+1].cishu;x[j+1].cishu=temp;
strcpy(xxx,x[j].name);strcpy(x[j].name,x[j+1].name);strcpy(x[j+1].name,xxx);
}
}
}
for(i=0;i<n;++i)
{
printf("%s\n",x[i].name);
}
}
return 0;
}