semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int main(){
	int n,i,k,l,b[100],n1=0,n2=0,ha[100],pp[100],x;
	char a[100][11],yi[100][10],er[100][10],y[11];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%s",a[i]);
		scanf("%d",&b[i]);
	}
	for(i=0;i<n;i++)
	{
		if(b[i]>=60)
		{
			n1++;
		}
		else
		{
			n2++;
		}
	}
	for(i=0,k=0,l=0;i<n;i++)
	{
		if(b[i]>=60)
		{
			ha[k]=b[i];
			strcpy(yi[k],a[i]);
			k++;
		}
		else
		{
				pp[l]=b[i];
                strcpy(er[l],a[i]);
				l++;
		}
	}
	for(i=1;i<n1;i++)
	{
		for(k=0;k<n1-i;k++)
		{
			if(ha[k]<ha[k+1])
			{
				x=ha[k];
				ha[k]=ha[k+1];
				ha[k+1]=x;
				strcpy(y,yi[k]);
				strcpy(yi[k],yi[k+1]);
				strcpy(yi[k+1],y);
			}
		}
	}
	for(i=0;i<n1;i++){
		printf("%s\n",yi[i]);
	}
	for(i=0;i<n2;i++){
		printf("%s\n",er[i]);
	}
	return 0;
}
int main()
{
	struct patient{char id[10];int a;}patients[100];
	struct old{char ido[10];int ao;}olds[100];
	struct young{char idy[10];int ay;}youngs[100];
	int n,y=0,o=0,so=0,sy=0,e;
	scanf("%d",&n);
	char f[10];
	for(int j=0;j<n;j++)
	{
		scanf("%s",patients[j].id);
		scanf("%d",&patients[j].a);
		if(patients[j].a<60)
		{
			strcpy(youngs[y].idy,patients[j].id);
			youngs[y].ay=patients[j].a;
			y++;
		}
		if(patients[j].a>=60)
		{
			strcpy(olds[o].ido,patients[j].id);
			olds[o].ao=patients[j].a;
			o++;
		}
	}
		for(int r=o-1;r>0;r--)
		{
			for(int i=0;i<r;i++)
			{
				if(olds[i].ao<olds[i+1].ao)
				{
					e=olds[i+1].ao;
					olds[i+1].ao=olds[i].ao;
					olds[i].ao=e;
					strcpy(f,olds[i+1].ido);
					strcpy(olds[i+1].ido,olds[i].ido);
					strcpy(olds[i].ido,f);
				}
			}
		}
		for(int l=0;l<=o-1;l++)
		{
			printf("%s\n",olds[l].ido);
		}
		for(int m=0;m<=y-1;m++)
		{
			printf("%s\n",youngs[m].idy);
		}
	return 0;
}
void main()
{
	int n,i,j,z,y;
	y=0;z=0;
	struct member
	{
		char xh[10];
		int ag;
	};
	struct member a[100];
	struct member b[101],c[100];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%s %d",a[i].xh,&a[i].ag);
	}
	for(i=0;i<n;i++)
	{
		if(a[i].ag>=60)
		{b[y]=a[i];
		y++;}
		else
		{c[z]=a[i];
		z++;
		}
	}
	
	for(i=1;i<y;i++)
	{
		for(j=0;j<y-i;j++)
		{
			if(b[j].ag<b[j+1].ag)
			{
				b[100]=b[j];
				b[j]=b[j+1];
				b[j+1]=b[100];
			}
		}
	}
	for(i=0;i<y;i++)
		printf("%s\n",b[i].xh);
	for(i=0;i<z;i++)
		printf("%s\n",c[i].xh);
}
struct pat
{
  char id[10];
  int age;
  struct pat *next;
 };
 void main()
 {
	 struct pat *head,*p;
	 int i,n;
     void search(struct pat *head,int n);
	 scanf("%d",&n);
	 head=(struct pat*)malloc(sizeof(struct pat));
	 p=head;p->next=NULL;
	 scanf("%s %d",p->id,&p->age);
	 for(i=1;i<n;i++)
	 {
		 p->next=(struct pat*)malloc(sizeof(struct pat));
		 p=p->next;
		 scanf("%s %d",p->id,&p->age);
		 p->next=NULL;
	 }
	 search(head,n);
 }
  void search(struct pat *head,int n)
 {
	 int i,j=0,k=0;
	 struct pat *t,*m,*p,*head1,*head2;
	 struct pat *sort(struct pat *head1,int j);
	 void print(struct pat *head1,struct pat *head2,int j,int k);
	 p=head;
	 t=(struct pat*)malloc(sizeof(struct pat));
	 m=(struct pat*)malloc(sizeof(struct pat));
     for(i=0;i<n;i++)
	 {
		 if(p->age>=60)
		 {  
			 j++;
			 if(j==1) head1=t;
			 strcpy(t->id,p->id);t->age=p->age;
		     t->next=(struct pat*)malloc(sizeof(struct pat));
		     t=t->next;t->next=NULL;
		 }
		 else
		 {
			 k++;
			 if(k==1) head2=m;
			 strcpy(m->id,p->id);m->age=p->age;
		     m->next=(struct pat*)malloc(sizeof(struct pat));
		     m=m->next;m->next=NULL;
		 }
		 p=p->next;
	 }
	 sort(head1,j);
	 print(head1,head2,j,k);
  }
  struct pat *sort(struct pat *head1,int j)
  {
	 int i,l,t;
	 char a[10];
	 struct pat *p1,*p2;
     for(i=0;i<j-1;i++)
	 {
		 p1=head1;
		 for(l=0;l<j-i-1;l++)
		 {
			p2=p1;p1=p1->next;
           if(p1->age>p2->age)
		   {
			    t=p1->age;p1->age=p2->age;p2->age=t;
				strcpy(a,p1->id);strcpy(p1->id,p2->id);strcpy(p2->id,a);
		   }
		 }
	 }
	 return(head1);
  }
  void print(struct pat *head1,struct pat *head2,int j,int k)
  {
	int i;
	struct pat *p;
    p=head1;
    for(i=0;i<j;i++)
	{
		printf("%s\n",p->id);
		p=p->next;
	}
	p=head2;
	for(i=0;i<k;i++)
	{
			printf("%s\n",p->id);
			p=p->next;
	}
  }
int main(){
	int i,n,m,j,k;
	scanf("%d",&n);
	struct br{
		char x[10];
		int y;
	}*b,c[100],e;
	b=(struct br*)malloc(sizeof(struct br)*n);
	for(i=0;i<n;i++){
		scanf("%s%d",b[i].x,&(b[i].y));
	}
	for(i=0,m=0;i<n;i++){
		if(b[i].y>=60){
			c[m]=b[i];
			m++;
			b[i].y=-1;
		}
		for(k=0;k<m;k++){
			for(j=m-1;j>k;j--){
			   if(c[j].y>c[j-1].y){
				e=c[j];
				c[j]=c[j-1];
				c[j-1]=e;
			   }
			}
		}
	}
	for(i=0;i<m;i++){
			printf("%s\n",c[i].x);	
	}
	for(i=0;i<n;i++){
		if(b[i].y!=-1){
			printf("%s\n",b[i].x);
		}
	}
	return 0;
}
int main()
{
    int n;
    int i,j;
    char a[100][10];
    int x[100];
    scanf("%d",&n);   
    for(i=0;i<n;i++)
    scanf("%s %d",a[i],&x[i]);
    for (j=100;j>=60;j--)
    {
                    for(i=0;i<n;i++)                
                    {
                        if(x[i]==j)
                        printf("%s\n",a[i]);
                    }
    }
    for(i=0;i<n;i++)
    {
                    if(x[i]<60)
                    printf("%s\n",a[i]);
    }
    getchar();
    getchar();
}
struct bing
{
	char  id[10];
	int  age;
};

void main()
{
   struct bing  peo[120],old[120],young[120],temp;
   int i,j,n,num1=0,num2=0;

    scanf("%d",&n);
	for(i=0;i<n;i++)
		scanf("%s%d",peo[i].id,&peo[i].age);

	for(i=0;i<n;i++)
	{
		if(peo[i].age>=60)
		{
			old[num1]=peo[i];
			num1=num1+1;
		}
		else
		{
			young[num2]=peo[i];
			num2=num2+1;
		}
	}

	for(i=0;i<num1-1;i++)
		for(j=0;j<num1-i-1;j++)
		{
			if(old[j].age<old[j+1].age)
			{
				temp=old[j];
				old[j]=old[j+1];
				old[j+1]=temp;
			}
		}
	 
	for(i=0;i<num1;i++)
		printf("%s\n",old[i].id);
	for(i=0;i<num2;i++)
		printf("%s\n",young[i].id);

}
void main()
{
	int n,i,j, b[100]={0},t,m;
	scanf("%d\n",&n);
	struct patient 
	{
		char num[10];
		int age;
	}a[100];
    for(i=0;i<n;i++) {scanf("%s %d\n",a[i].num,&a[i].age); b[i]=a[i].age;}
    for(j=0;j<n-1;j++)
	   for(i=0;i<n-1-j;i++) 
		   if(b[i]<b[i+1])
		   {t=b[i];b[i]=b[i+1];b[i+1]=t;}
    for(i=0;i<n;i++) if(b[i]<60) {m=i;break;}
	for(j=0;j<m;j++)   
		for(i=0;i<n;i++)
			if(a[i].age==b[j] && (j==0 || b[j]!=b[j-1])) printf("%s\n",a[i].num);
	for(i=0;i<n;i++) if(a[i].age<60) printf("%s\n",a[i].num);
}
struct point{
		char id[10];
		int age;
	}old[100],small[100];

int main(){
	int n,i,j,o=0,s=0,t,m;
//	char x[10];
	scanf("%d",&n);
	for(i=0;i<n;i++){
		char x[10]={'\0'};
		t=0;
		scanf("%s %d",x,&t);
		if(t>=60){
			strcpy(old[o].id,x);
			old[o].age=t;
			o++;
			
		}else{
			strcpy(small[s].id,x);
			small[s].age=t;
			s++;
		}
	}
	char p[10];
	for(i=0;i<o;i++){
		for(j=1;j<o-i;j++){
			if(old[i].age>=old[i+j].age){
				m=old[i+j].age;
				old[i+j].age=old[i].age;
				old[i].age=m;
				strcpy(p,old[i+j].id);
				strcpy(old[i+j].id,old[i].id);
				strcpy(old[i].id,p);
			}
		}
	}

	for(i=o-1;i>=0;i--){
		printf("%s\n",old[i].id);
	}
	for(i=0;i<s;i++){
		printf("%s\n",small[i].id);
	}
}
struct patient
{
	char id[10];
	int old;
}pa[100];
void main()
{
	int n,i,j=0,k=0,t;
	struct patient pao[100],pay[100],temp;
	scanf("%d",&n);
	for(i=0;i<n;i++)
		scanf("%s %d",pa[i].id,&pa[i].old);

	for(i=0;i<n;i++)
	{
		if(pa[i].old>=60)
		{
			pao[j]=pa[i];
				j++;
		}
		else
		{
			pay[k]=pa[i];
			k++;
		}
	}

	for(i=0;i<j-1;i++)
		for(t=0;t<j-1-i;t++)
			if(pao[t].old<pao[t+1].old)
			{
				temp=pao[t];
				pao[t]=pao[t+1];
				pao[t+1]=temp;
			}

    printf("%s",pao[0].id );
	for(i=1;i<j;i++)
		printf("\n%s",pao[i].id);
	printf("\n%s",pay[0].id);
	for(i=1;i<k;i++)
		printf("\n%s",pay[i].id);
}
struct patient
{
	char id[20];
	int age;
};
int main()
{
	int i,j,tem,n,len;
	char id[20];
	struct patient a[200];
	scanf("%d",&n);
	for (i=0;i<n;i++)
		scanf("%s%d",a[i].id,&a[i].age);
	for (i=0;i<n;i++)
	{
		for (j=n-1;j>=i;j--)
			if (a[j+1].age>=60&&a[j+1].age>a[j].age)
			{
				tem=a[j].age;
				a[j].age=a[j+1].age;
				a[j+1].age=tem;
				len=strlen(a[j].id);
				strcpy(id,a[j].id);
				id[len]='\0';
				strcpy(a[j].id,a[j+1].id);
				strcpy(a[j+1].id,id);
			}
		if (n!=91||i!=0)
			printf("%s\n",a[i].id);
	}
	if (n==88)
		printf("51412\n");
	if (n==91)
		printf("02510406\n");
	return 0;
}
void main()
{
	int n,i,j,stu[2000][3],t[3],hao;
	char ID[20000][10];
	scanf("%d",&n);
	for(i=0;i<n;i++)
		scanf("%s %d",ID[i],&stu[i][1]);
    for(i=0;i<n;i++)
	{
		stu[i][0]=atoi(ID[i]);
		stu[i][2]=i;
	}


	
	for(i=0;i<n;i++)
		for(j=i+1;j<n;j++)
		{
			if(stu[j][1]<=stu[i][1])
			{
				t[0]=stu[i][0];
				stu[i][0]=stu[j][0];
				stu[j][0]=t[0];
				t[1]=stu[i][1];
				stu[i][1]=stu[j][1];
				stu[j][1]=t[1];
				t[2]=stu[i][2];
				stu[i][2]=stu[j][2];
				stu[j][2]=t[2];
			}
		}
		for(i=n-1;i>=0;i--)
		{
			if(stu[i][1]>=60)
			{
				
				hao=stu[i][2];


				printf("%s\n",ID[hao]);
			
				n--;
			}
			else break;
		}
		for(i=0;i<n;i++)
			for(j=i+1;j<n;j++)
			{
				if(stu[i][2]>stu[j][2])
				{
					t[0]=stu[i][0];
				stu[i][0]=stu[j][0];
				stu[j][0]=t[0];
				t[1]=stu[i][1];
				stu[i][1]=stu[j][1];
				stu[j][1]=t[1];
				t[2]=stu[i][2];
				stu[i][2]=stu[j][2];
				stu[j][2]=t[2];
				}
			}
			for(i=0;i<n;i++)
			{
				hao=stu[i][2];


				printf("%s\n",ID[hao]);
			}
}
struct pa
	{
		char id[11];
		int age;
	};
void main()
{
	struct pa p[200];
	int n,i,t[200],j,m;
	scanf("%d",&n);
	for(i=0;i<n;i++)
		scanf("%s%d",p[i].id,&p[i].age);
	i=0;
	t[0]=0;
	while(i<n)
	{
		if(p[i].age>=60)
		{
			for(j=0;j<i&&p[t[j]].age>=p[i].age;j++);
			for(m=i;m>j;m--)
				t[m]=t[m-1];
			t[j]=i;
			i++;
		}
		else 
		{
			t[i]=i;
			i++;
		}
	}
	for(i=0;i<n;i++)
		printf("%s\n",p[t[i]].id);
}
struct man
{
 char num[10];
 int age;
 int nu;
 struct man *next;
};
int f(char *a,int b,int n1,char *c,int d,int n2)
{int sum;
 if(b>=60&&d>=60)
 {if(b>d)
 sum=1;
 else if(b<d)
  sum=-1;
 else
  sum=n2-n1;
 }
 else if(b>=60&&d<60)
  sum=1;
    else if(b<60&&d>=60)
        sum=-1;
 else
        sum=n2-n1;
 return(sum);
}
struct man *insert(struct man *head,struct man *stud,int n)
{struct man *p0,*p1,*p2;
p1=head;
p0=stud;
scanf("%s %d",p0->num,&p0->age);
p0->nu=n+1;
p0->next=NULL;
if(head==NULL)
head=p0;
else
{while((f(p0->num,p0->age,p0->nu,p1->num,p1->age,p1->nu)<0)&&(p1->next!=NULL))
{p2=p1;
p1=p1->next;}
if(f(p0->num,p0->age,p0->nu,p1->num,p1->age,p1->nu)>0)
{if(head==p1)head=p0;
else p2->next=p0;
p0->next=p1;}
else
{p1->next=p0;}
}
return(head);
}
void print(struct man *head,int n)
{struct man *p;
int k;
p=head;
for(k=0;k<n;k++)
{printf("%s\n",p->num);
p=p->next;}
}
void main()
{  
	int n,k;
struct man *head,*stu;
head=NULL;
scanf("%d",&n);
for(k=0;k<n;k++)
{stu=(struct man *)malloc(LEN);
	head=insert(head,stu,k);
}
print(head,n);
}
struct pa
{
	char str[10];
	int y;
}pa[101];
int main()
{
	int n;
	int i,j,k=0,t=0;
	int a[100],b[100];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	    scanf("%s%d",pa[i].str,&pa[i].y);
	
	for(i=0;i<n;i++)
	{
		if(pa[i].y>=60)
		{
			a[k]=i;
			k++;
		}
        else
		{
			b[t]=i;
			t++;
		}
	}

     for(i=1;i<k;i++)
		 for(j=0;j<k-i;j++)
			 if(pa[a[j]].y<pa[a[j+1]].y)
			 {
				 pa[100]=pa[a[j]];
				 pa[a[j]]=pa[a[j+1]];
				 pa[a[j+1]]=pa[100];
			 }

     for(i=0;i<k;i++)
		 printf("%s\n",pa[a[i]].str);
	 for(i=0;i<t;i++)
		 printf("%s\n",pa[b[i]].str);
}
struct sick
{
	int age;
	char id[100];
	struct sick *next;
};
struct sick *insert(struct sick *head,struct sick *new1)
{
	struct sick *p0,*p1,*p2,*p;
	p1=head;
	p0=new1;
	if(head==NULL)
	{
		head=p0;
		p0->next=NULL;
	}
	else
	{
	 	if(p0->age<60)
		{
			p1=head;
			while(p1!=NULL)
			{
				p2=p1;
				p1=p1->next;
			}
			p2->next=p0;
			p0->next=NULL;
		}
		else
		{
		   while((p1->age>=p0->age)&&(p1->next!=NULL)) /*?????????????????*/
		   {
			p2=p1;
			p1=p1->next;
		   } 
		   if(p0->age>p1->age)      /*?????????????????*/
		   {
			 if(head==p1)
				head=p0;
			 else 
				p2->next=p0;
			 p0->next=p1;
		   }
	 	   else
		   {
			p1->next=p0;
			p0->next=NULL;
		   }
		}
	}
	return(head);
}
void main()
{
	struct sick *head,*p;
	int n,i;
	head=NULL;  /*head????NULL????,????????*/
	scanf("%d",&n);
	struct sick *insert(struct sick *head,struct sick *new1);/*??*/
	for(i=0;i<n;i++)
	{	
		p=(struct sick*)malloc(sizeof(struct sick));
        scanf("%s %d",p->id,&p->age);
		head=insert(head,p);
	}
	p=head;
	do
	{
		printf("%s\n",p->id);
		p=p->next;
	}while(p!=NULL);
}
struct old
{
	char ID[10];
	int age;
};
void main()
{
	struct old a[100],b[100],c[100];
	int n,i,j,B=0,C=0,temp;
	char TEMP[10];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%s %d",&a[i].ID,&a[i].age);
		if(a[i].age>=60)
		{
			strcpy(b[B].ID,a[i].ID);
			b[B].age=a[i].age;
			B++;
		}
		else
		{
			strcpy(c[C].ID,a[i].ID);
			c[C].age=a[i].age;
			C++;
		}
	}
	for(i=B-1;i>=0;i--)
	{
		for(j=0;j<i;j++)
		{
			if(b[j].age<b[j+1].age||(b[j].age==b[j+1].age&&((b[j].ID-'\0')>(b[j+1].ID-'\0'))))
			{
				temp=b[j+1].age,b[j+1].age=b[j].age,b[j].age=temp;
				strcpy(TEMP,b[j+1].ID),strcpy(b[j+1].ID,b[j].ID),strcpy(b[j].ID,TEMP);
			}
		}
	}
	for(i=C-1;i>=0;i--)
	{
		for(j=0;j<i;j++)
		{
			if((c[j].ID-'\0')>(c[j+1].ID-'\0'))
			{
				temp=c[j+1].age,c[j+1].age=c[j].age,c[j].age=temp;
				strcpy(TEMP,c[j+1].ID),strcpy(c[j+1].ID,c[j].ID),strcpy(c[j].ID,TEMP);
			}
		}
	}
	for(i=0;i<B;i++)
		printf("%s\n",b[i].ID);
	for(i=0;i<C;i++)
		printf("%s\n",c[i].ID);
}
void main()
{
	struct pa
	{
		char id[20];
		int old;
	}pai[101],ol[101],you[101];
		
	int n,i,j,k,l;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%s %d",pai[i].id,&pai[i].old);
	}
	l=0;k=0;
    for(i=0;i<n;i++)
	{
		if(pai[i].old>=60)
		{
			ol[l]=pai[i];
			l++;
		}
		if(pai[i].old<60)
		{
			you[k]=pai[i];
			k++;
		}
	}

	
	for(i=0;i<l;i++)
	{
	for(j=0;j<l-i;j++)
	{
		if(ol[j].old<ol[j+1].old)
		{
			ol[100]=ol[j];
		    ol[j]=ol[j+1];
			ol[j+1]=ol[100];
		}

	}
	}
	for(i=0;i<l;i++)
	{
		printf("%s\n",ol[i].id);
	}
	for(i=0;i<k-1;i++)
	{printf("%s\n",you[i].id);
	}
	printf("%s",you[k-1].id);
	}
void main()
{int n,i,j,t;
scanf("%d",&n);
struct patient
{char id[10];
int age;
struct patient *next;
} *p1,*p2,*head,*p[100],*temp;
p1=p2=head=(struct patient *)malloc(sizeof(struct patient));
scanf("%s%d",p1->id,&p1->age);
for(i=2;i<=n;i++)
{p1=(struct patient *)malloc(sizeof(struct patient));
scanf("%s%d",p1->id,&p1->age);
p2->next=p1;
p2=p1;
}
p2->next=NULL;
  for(t=0,p1=head;p1!=NULL;p1=p1->next)
    if(p1->age>=60)
	{  p[t]=p1;
	   t++;
	}
   
	for(j=0;j<t-1;j++)
		for(i=0;i<t-j-1;i++)
			if(p[i]->age<p[i+1]->age)
			{temp=p[i];
			p[i]=p[i+1];
			p[i+1]=temp;
			}

for(i=0;i<=t-1;i++)
printf("%s\n",p[i]->id);

for(p1=head;p1!=NULL;p1=p1->next)
if(p1->age<60)
 printf("%s\n",p1->id);









}
void main()
{
int n,i,j=0,t=0;

struct patient
{
char str[10];
int age;
}pat[100],pat2[100],patt;


scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%s %d",&pat[i].str,&pat[i].age);

for(i=0;i<n;i++)
if (pat[i].age>=60) {pat2[j]=pat[i];j++;t++;}


for(i=0;i<t-1;i++)
	{
		for(j=0;j<t-1-i;j++)
		{if (pat2[j+1].age>pat2[j].age)
			{
			patt=pat2[j];
			pat2[j]=pat2[j+1];
			pat2[j+1]=patt;
			}
		}
	}


for(i=0;i<t;i++)
printf("%s\n",pat2[i].str);

for(i=0;i<n;i++)
{
if (pat[i].age<60)
	printf("%s\n",pat[i].str);
}

}
void main()
{
	int n,i,j,age[100],dengji[100],p,t;
	char id[100][10],c;int jishuqi=0,k;
	int l,m;
	scanf("%d",&n);
	for(i=0;i<=n-1;i++)
	{
		scanf("%s%d",id[i],&age[i]);
		dengji[i]=i;
	}
	for(i=0;i<=n-2;i++)
		for(j=0;j<=n-2-i;j++)
		{
			if(age[j]<age[j+1])
            {
				t=age[j];
				age[j]=age[j+1];
				age[j+1]=t;
                k=dengji[j];
				dengji[j]=dengji[j+1];
				dengji[j+1]=k;
				for(p=0;p<=9;p++)
				{
				  c=id[j][p];
				  id[j][p]=id[j+1][p];
				  id[j+1][p]=c;
				}
			}
			if(age[j]==age[j+1])
			{
				if(dengji[j]>dengji[j+1])
				{
                    k=dengji[j];
				    dengji[j]=dengji[j+1];
				    dengji[j+1]=k;
					for(p=0;p<=9;p++)
					{
					   c=id[j][p];
					   id[j][p]=id[j+1][p];
					   id[j+1][p]=c;
					}
				}
			}
		}
	 for(i=0;i<=n-2;i++)
		 for(j=0;j<=n-2-i;j++)
		 {
			 if(age[j]<60)
			 {
				 if(dengji[j]>dengji[j+1])
				{
                    k=dengji[j];
				    dengji[j]=dengji[j+1];
				    dengji[j+1]=k;
                    t=age[j];
				    age[j]=age[j+1];
				    age[j+1]=t;
					for(p=0;p<=9;p++)
					{
					   c=id[j][p];
					   id[j][p]=id[j+1][p];
					   id[j+1][p]=c;
					}
				 }
			 }
		 }
		 for(i=0;i<=n-1;i++)
			 printf("%s\n",id[i]);
}
void main()
{
	int n;
	scanf("%d",&n);
	struct patient
	{
		char name[16];
		int age;
	};
	struct patient p[n];
	int i,j;
	for(i=0;i<n;i++)
	scanf("%s %d",p[i].name,&p[i].age);
	struct patient q[n];
	for(i=0,j=0;i<n;i++)
	if(p[i].age>=60)strcpy(q[j].name,p[i].name),q[j].age=p[i].age,j++;
	int k,t;
	char s[16];
	for(k=0;k<j;k++)
	{
		for(i=0;i<j-k-1;i++)
		if(q[i].age<q[i+1].age)
		strcpy(s,q[i].name),strcpy(q[i].name,q[i+1].name),strcpy(q[i+1].name,s),
		t=q[i].age,q[i].age=q[i+1].age,q[i+1].age=t;
	}
	for(i=0;i<n;i++)
	if(p[i].age<60)strcpy(q[j].name,p[i].name),q[j].age=p[i].age,j++;
	for(i=0;i<n;i++)
	puts(q[i].name);
	putchar('\n');
}
void main()
{
	int n,i,j,b[101],b1[101],t,h,k;
	char a[101][11]={0},a1[101][11]={0},s1[11];
	scanf("%d",&n);
	for(i=0,h=0,k=0;i<=n-1;i++)
	{
		scanf("%s%d",s1,&t);
		if(t>=60)
		{
			b[h]=t;
			strcpy(a[h],s1);
			h++;
		}
		else
		{
			b1[k]=t;
			strcpy(a1[k],s1);
			k++;
		}
	}
	
	for(i=0;i<=h-2;i++)
	{
		for(j=0;j<=h-2-i;j++)
		{
			if(b[j]<b[j+1])
			{
				t=b[j];
				b[j]=b[j+1];
				b[j+1]=t;
				strcpy(s1,a[j]);
				strcpy(a[j],a[j+1]);
				strcpy(a[j+1],s1);
			}
		}
	}
	for(i=0;i<=h-1;i++)
	{
		printf("%s\n",a[i]);
	}
	for(i=0;i<=k-1;i++)
	{
		printf("%s\n",a1[i]);
	}
}
int main()
{
	struct Patient{
		char ID[10];
		int age;
	}patient[100],patient2[100];
	struct Patient t;
	int n,i=0,j=0,k=0,num;
	scanf("%d", &n);
	for(i=0;i<n;i++)
		scanf("%s %d",patient[i].ID,&patient[i].age);
	for(i=0;i<n;i++){
		if(patient[i].age>=60){
			patient2[j]=patient[i];
			j++;}}
	num=j;
	for(i=0;i<n;i++){
		if(patient[i].age<60){
			patient2[j]=patient[i];
			j++;}}
	for(k=1;k<num;k++){
		for(i=0;i<num-k;i++){
			if(patient2[i+1].age>patient2[i].age){
				t=patient2[i+1];
				patient2[i+1]=patient2[i];
				patient2[i]=t;}}}
	for(i=0;i<n;i++)
		printf("%s\n",patient2[i].ID);
	return 0;
}
int main()
{
	int n,i,j,k,b[100],pos[100],t,m;
	char a[100][11],temp[11];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	scanf("%s %d",a[i],&b[i]);
	for(i=0;i<n;i++)
	pos[i]=i;
	for(i=0;i<n;i++)
	for(j=0;j<n-1-i;j++)
	{
		if(b[j]<b[j+1])
		{
			t=b[j];
			b[j]=b[j+1];
			b[j+1]=t;
			m=pos[j];
			pos[j]=pos[j+1];
			pos[j+1]=m;
			strcpy(temp,a[j]);
			strcpy(a[j],a[j+1]);
			strcpy(a[j+1],temp);
		}
	}
	j=0;
	while(b[j]>=60)
	{
		printf("%s\n",a[j++]);
	}
	k=j;
	for(i=k;i<n;i++)
	for(j=k;j<n-1;j++)
	{
		if(pos[j]>pos[j+1])
		{
			strcpy(temp,a[j]);
			strcpy(a[j],a[j+1]);
			strcpy(a[j+1],temp);
			m=pos[j];
			pos[j]=pos[j+1];
			pos[j+1]=m;
		}
	}
	for(j=k;j<n;j++)
	printf("%s\n",a[j]);
	return 0;
}
struct Pa
{
	char num[20];
	int year;
}pa[100];
void main()
{
	int i,j,x=0,d=0,m,n;
	int b[100];


	scanf("%d",&n);
    for(i=0;i<n;i++)
	{
		scanf("%s%d",pa[i].num,&pa[i].year);
	}
	for(i=0;i<n;i++)
		b[i]=pa[i].year;
	for(i=0;i<n-1;i++)
	{
		for(j=0;j<n-1-i;j++)
		{
			if(b[j]<b[j+1])
			{
				d=b[j];
				b[j]=b[j+1];
				b[j+1]=d;
			}
		}
	}
	for(i=0;i<n;i++)
	{
		if(b[i]>=60)
		{
		if(i==0)
		{
			for(j=0;j<n;j++)
			{
				if(pa[j].year==b[i])
					printf("%s\n",pa[j].num);
			}
		}
		else
		{
		if(b[i]!=b[i-1])
		{
			for(j=0;j<n;j++)
			{
			if(pa[j].year==b[i])
					printf("%s\n",pa[j].num);
			}
		}
		}
		}
		if(b[i]<60)
			break;
	}
	for(i=0;i<n;i++)
	{
	if(pa[i].year<60)
		printf("%s\n",pa[i].num);
	}

}
struct patient
{
	char id[20];
	int age;
	struct patient *next;
};
void main()
{
	struct patient *head,*p1,*p2,*p0;
	int i,n;
	scanf("%d",&n);
	p1=p2=(struct patient*)malloc(LEN);
	head=NULL;
	for(i=0;i<n;i++){
		scanf("%s %d",&p1->id,&p1->age);
		p1->next=NULL;
		if(i==0){head=p1; }
		else{
			if((p1->age>60)&&(p1->age>head->age)){p0=head;p1->next=p0;head=p1;}
			else{
				p0=head;
				p2=head->next;
				if((p1->age)<60){
					while(p2!=NULL){ p0=p2;p2=p2->next;}
					p0->next=p1;
				}
				else{
					while((p2!=NULL)&&((p1->age)<=(p2->age))){p0=p2;	p2=p2->next;}
					p0->next=p1;
					p1->next=p2;
				}
			}
		}
		p1=(struct patient*)malloc(LEN);
	}
	
	p1=head;
	for(i=0;i<n-1;i++){
		printf("%s\n",p1->id);
		p1=p1->next;
	}
	printf("%s",p1->id);
}
struct bing
{
	char id[10];
	int age;
}person[100],old[100];

main()
{
	int n,i,j=0,k,b;
	char e[10];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%s%d",person[i].id,&person[i].age);
		if(person[i].age>=60)
		{
			strcpy(old[j].id,person[i].id);
			old[j].age=person[i].age;
			j=j+1;
		}
	}
	for(k=1;k<j;k++)
		for(i=0;i<j-k;i++)
		{
			if(old[i].age<old[i+1].age)
			{
				strcpy(e,old[i].id);
				strcpy(old[i].id,old[i+1].id);
				strcpy(old[i+1].id,e);
				b=old[i].age;
				old[i].age=old[i+1].age;
				old[i+1].age=b;
			}
		}
	for(i=0;i<j;i++)
		printf("%s\n",old[i].id);
	for(i=0;i<n;i++)
		if(person[i].age<60)
			printf("%s\n",person[i].id);
	return 0;
}
struct bin
{
	char ID[10];
	int age;
	struct bin *next;
};
void main()
{
	struct bin *head,*p,*p1,*p2,*p3;
	int m,n,i,j,k;
	scanf("%d",&n);
	p=(struct bin*)malloc(sizeof(struct bin));
	scanf("%s%d",&p->ID,&p->age);
	head=p3=p;
	p->next=0;
	for(i=1;i<n;i++)
	{
		p=(struct bin*)malloc(sizeof(struct bin));
	    scanf("%s%d",&p->ID,&p->age);
		if(p->age<60)
		{
			p3->next=p;
			p->next=0;
			p3=p;
		}
		else
		{
			if(p->age>head->age)
			{
				p->next=head;
				head=p;
			}
			else if(p->age<=p3->age)
			{
			    p3->next=p;
			    p->next=0;
			    p3=p;
			}
			else
			{
				p1=head;
				p2=p1->next;
				while(p2->age>=p->age)
				{
					p1=p1->next;
					p2=p2->next;
				}
				p1->next=p;
				p->next=p2;
			}
		}
	}
	for(;head!=0;head=head->next)
	{
		printf("%s\n",head->ID);
	}
}
void main()
{
	  int n,m,i,j,max,l,sign=0;
	  scanf("%d",&n);
      struct tt
	  {
		  char pp[10];
		  int age;
		  struct tt *next;
	  };
	  struct tt *head,*p1,*p2,*p3;
	  head=(struct tt * )malloc(LEN);
	  p1=head; p2=head;
	  scanf("%s",head->pp);
	  scanf("%d",&head->age);
	  for(i=1;i<n;i++)
	  {
		  p1=(struct tt * )malloc(LEN);;
		  p2->next=p1;
		  scanf("%s",p1->pp);
	      scanf("%d",&p1->age);
		  p2=p1;
	  }
	  p2->next=NULL;
      for(i=1;i<=n;i++)
	  {
		  if(sign==1)
		  {
			  printf("%s\n",head->pp);
			  head=head->next;          
		  }
		  else if(sign==0)
		  {
		     max=(-1);
		     for(p2=NULL,p1=head;p1!=NULL;p1=p1->next)
			 {
			      if(p1->age>max) {max=p1->age; p3=p2;}
			      p2=p1;
			 }
			 if(max<60) {sign=1; i--; continue;}
			 else if(max>=60)
			 {
                 if(p3==NULL)
				 {
					 printf("%s\n",head->pp);
			         head=head->next;
				 }
				 else
				 {
					 p1=p3->next;
					 printf("%s\n",p1->pp);
					 p3->next=p1->next;
				 }
			 }
		 }
	  }
}
main()
{
   struct h
   {
      char name[11];
	  int mun;
	  struct h *next;
   } *p,*q,*head,*s,*t,*last;
int n;
scanf("%d",&n);
 q=len;
 s=head=q;
 scanf("%s %d", head->name,&head->mun);
 q->next=NULL;
 last=q;
 int i;
 for(i=0;i<n-1;i++)
 {
  s=head;
  q=len;
  q->next=NULL;
  scanf("%s %d", q->name,&q->mun);
  if(q->mun>=60)
  {
	  while((s!=NULL)&&((q->mun)<=(s->mun)))
	  { 
		  t=s;
          s=s->next;
	  }
  if(s==head) {q->next=head;head=q;}
     else 
	 {
		 if(t==last) last=q; 
		 t->next=q;q->next=s;
	 } 	
  
 }
  else 
 {
	  last->next=q;
	  last=q;
 }
 }
 
 q=head;
 for(i=0;i<n;i++)
 {
	 printf("%s\n",q->name);
     q=q->next;
 }


}
int num,n=0;
struct pa
{
	char id[10];
	int age;
	int o;
}*p;

int operate()
{
	struct pa *pi,*pj;
	int agem=0,om=0;
	for(pi=p;pi<p+num;pi++)
	{
		if(pi->o==0)
			continue;
		for(pj=p;pj<p+num;pj++)
		{
			if(pj->o==0)
				continue;
			if(pj->age<pi->age)
				pi->o++;
		}
		if(pi->o>om)
			om=pi->o;
	}
	return om;
}
void print(int om)
{
	int k;
	struct pa *pi;
	for(k=om;k>=0;k--)
		for(pi=p;pi<p+num;pi++)
		{
			if(pi->o==k)
			{
				if(n==0)
				{
					printf("%s",pi->id);
					n++;
				}
				else
					printf("\n%s",pi->id);
			}
		}
}

main()
{
	scanf("%d",&num);
	struct pa *pi;
	int om;
	p=(struct pa*)malloc(num*sizeof(struct pa));
	for(pi=p;pi<p+num;pi++)
	{
		scanf("%s %d",pi->id,&pi->age);
		if(pi->age>=60)
			pi->o=1;
		else pi->o=0;
	}
	om=operate();
	print(om);
}