semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int main()
{
	void print(int a[],int b[]);
	int a[100],b[100];
	print(a,b);
	return 0;
}

void print(int a[100],int b[100])
{
	int n,m,i,j,k,l=0;
	scanf("%d %d",&n,&m);
	for(i=0;i<n;i++) {scanf("%d",&a[i]);}
	for(i=0;i<m;i++) {scanf("%d",&b[i]);}
	for(i=0;i<n-1;i++)
	{
		for(j=0;j<n-1-i;j++)
		{
			if(a[j]>a[j+1]) {k=a[j];a[j]=a[j+1];a[j+1]=k;}
		}
	}
	for(i=0;i<m-1;i++)
	{
		for(j=0;j<m-1-i;j++)
		{
			if(b[j]>b[j+1]) {k=b[j];b[j]=b[j+1];b[j+1]=k;}
		}
	}
	for(i=0;i<n;i++)
	{
		printf("%d ",a[i]);
	}
	for(i=0;i<m;i++)
	{
		printf("%d",b[i]);
		if(i==m-1) break;
		printf(" ");
	}
}
/*
a)  ??????????????????? 
b)  ??????????? 
c)  ?????????? 
d)  ????????? 
*/
int a[200];
int b[100];
int *p1=a,*p2=b;
int m,n;
int *p2m=&m,*p2n=&n;
/*Read-in  as function(a)  */
void funcofa(int *p1,int *p2,int *p2m,int *p2n)
{
	scanf("%d%d",p2m,p2n);
	int i;
	for(i=1;i<=*p2m;i++)
	{
		scanf("%d",p1+i-1);
	}
	for(i=1;i<=*p2n;i++)
	{
		scanf("%d",p2+i-1);
	}
}
/*Sort  as function(b)*/
void funcofb(int *p1,int *p2,int *p2m,int *p2n)
{
	int i,j;
	int temp;
	for(i=1;i<=*p2m;i++)
	{
		for(j=1;j<*p2m;j++)
		{
			if(*(p1+j-1)>*(p1+j))
			{
				temp=*(p1+j);
				*(p1+j)=*(p1+j-1);
				*(p1+j-1)=temp;
			}
			else
			{}
		}
	}
	for(i=1;i<=*p2n;i++)
	{
		for(j=1;j<*p2n;j++)
		{
			if(*(p2+j-1)>*(p2+j))
			{
				temp=*(p2+j);
				*(p2+j)=*(p2+j-1);
				*(p2+j-1)=temp;
			}
			else
			{}
		}
	}
}
/*void funcofb(int *p1,int *p2,int *p2m,int *p2n)
{
	int i,j;
	int temp;
	for(i=1;i<=*p2m;i++)
	{
		for(j=1;j<*p2m-i;j++)
		{
			if(*(p1+j*sizeof(int)-1*sizeof(int))>*(p1+j*sizeof(int)))
			{
				temp=*(p1+j*sizeof(int));
				*(p1+j*sizeof(int))=*(p1+j*sizeof(int)-1);
				*(p1+j*sizeof(int)-1)=temp;
			}
			else
			{}
		}
	}
	for(i=1;i<=*p2n;i++)
	{
		for(j=1;j<*p2n-i;j++)
		{
			if(*(p2+j*sizeof(int)-1*sizeof(int))>*(p2+j*sizeof(int)))
			{
				temp=*(p2+j*sizeof(int));
				*(p2+j*sizeof(int))=*(p2+j*sizeof(int)-1);
				*(p2+j*sizeof(int)-1)=temp;
			}
			else
			{}
		}
	}
}*/
/*Merge  as  function(c? */
void funcofc(int *p1,int *p2,int *p2m,int *p2n)
{
	int i;
	for(i=1;i<=*p2n;i++)
	{
		*(p1+(*p2m)+i-1)=*(p2+i-1);
	}
}
/*Output  as  dunction(d)  */
void funcofd(int *p1,int *p2,int *p2m,int *p2n)
{
	int i;
	printf("%d",*p1);
	for(i=2;i<=*p2m+*p2n;i++)
	{
		printf(" %d",*(p1-1+i));
	}
	printf("\n");
}
/*Main*/
void main()
{
	funcofa(p1,p2,p2m,p2n);
	funcofb(p1,p2,p2m,p2n);
	funcofc(p1,p2,p2m,p2n);
	funcofd(p1,p2,p2m,p2n);
}
int m,n,a[500]={0},b[500]={0};
void scanarray()
{
	int i;
	scanf("%d %d",&m,&n);
	for(i=0;i<=m-1;i++)
	{
		scanf("%d",&a[i]);
	}
	for(i=0;i<=n-1;i++)
	{
		scanf("%d",&b[i]);
	}
}
void shengxu(int x[],int len)
{
	int i,j,temp;
	for(i=len-1;i>=0;i--)
	{
		for(j=0;j<=i-1;j++)
		{
			if(x[j]>=x[j+1])
			{
				temp=x[j];
				x[j]=x[j+1];
				x[j+1]=temp;
			}
		}
	}
}
void hebing(int x[],int y[],int lenx,int leny)
{
	int *p,*q;
	for(p=x+lenx,q=y;q<y+leny;p++,q++)
	{
		*p=*q;
	}
}
void printarray(int x[],int len)
{
	int i;
	printf("%d",x[0]);
	for(i=1;i<=len-1;i++)
	{
		printf(" %d",a[i]);
	}
	putchar('\n');
}
int main()
{
	scanarray();
	shengxu(a,m);
	shengxu(b,n);
	hebing(a,b,m,n);
	printarray(a,m+n);
	return 0;
}
int main()
{
    int p,q,i,num;
    cin>>p>>q;
    int a[10],b[10];
    for(i=1;i<=p;i++)
    {
                     cin>>num;
                     a[i]=num;
    }
    for(i=1;i<=q;i++)
    {
                     cin>>b[i];
    }
    int pai(int a[],int x);
    pai(a,p);
    pai(b,q);
    for(i=1;i<=p;i++)
    {
                     cout<<a[i]<<" ";
    }
    for(i=1;i<=q-1;i++)
    {
                       cout<<b[i]<<" ";
    }
    cout<<b[q];
    return 0;
}
int pai(int a[],int x)
{
    int i,j;
    int m;
    for(i=1;i<=x-1;i++)
    {
                       for(j=1;j<=x-i;j++)
                       {
                                          if(a[j]>a[j+1])
                                          {
                                                         m=a[j+1];
                                                         a[j+1]=a[j];
                                                         a[j]=m;
                                          }
                       }
    }
    return a[x];
}
int m,n;
void nem(int num1[100],int num2[100])
{
	int i;
	scanf("%d%d",&m,&n);
	for(i=0;i<m;i++)
	scanf("%d",&num1[i]);
	for(i=0;i<n;i++)
	scanf("%d",&num2[i]);
}
void pai(int num[100],int x)
{
	int i,j,t;
	for(j=0;j<x-1;j++)
	for(i=0;i<x-1-j;i++)
	if(num[i]>num[i+1])
	{
		t=num[i];
		num[i]=num[i+1];
		num[i+1]=t;
	}
}
void he(int num1[100],int num2[100],int num[100])
{
	int i;
	for(i=0;i<m;i++)
	num[i]=num1[i];
	for(i=m;i<m+n;i++)
	num[i]=num2[i-m];
}
void printnum(int num[100])
{
	int i;
	printf("%d",num[0]);
	for(i=1;i<m+n;i++)
	printf(" %d",num[i]);
}
int main()
{
	int num[100],num1[100],num2[100];
	nem(num1,num2);
	pai(num1,m);
	pai(num2,n);
	he(num1,num2,num);
	printnum(num);
	return 0;
}
int a[400],b[200],n,m;
void run1()
{
     int i;
     scanf("%d%d",&n,&m);
     for (i=1;i<=n;i++)
         scanf("%d",&a[i]);
     for (i=1;i<=m;i++)
         scanf("%d",&b[i]);
}
void sort(int a[],int n)
{
     int i,j,x;
     for (i=1;i<n;i++)
         for (j=i+1;j<=n;j++)
             if (a[i]>a[j])
             {
                x=a[i]; a[i]=a[j]; a[j]=x;
             }
}
void run2()
{
     sort(a,n);
     sort(b,m);
}
void run3()
{
     int i;
     for (i=1;i<=m;i++)
         a[i+n]=b[i];
}
void run4()
{
     int i;
     for (i=1;i<n+m;i++)
         printf("%d ",a[i]);
     printf("%d",a[n+m]);
}
int main()
{
    run1();
    run2();
    run3();
    run4();
}
void input(int x[],int p);
void sort_ascending(int x[],int p);
main()
{
 int m,n,a[maxsize],b[maxsize],j,i; 
 scanf("%d %d",&m,&n);
 input(a,m);
 input(b,n);
 sort_ascending(a,m);
 sort_ascending(b,n);
 for (j=0;j<m;j++)
 printf("%d ",a[j]);
 for (i=0;i<n-1;i++)
 {
	printf("%d ",b[i]);
 }
 printf("%d",b[n-1]);
 }
void input(int x[],int p)
{
 int i;
 for(i=0;i<p;i++)
  scanf("%d",&x[i]);
}
void sort_ascending(int x[],int p)
{
 int i,j,t;
 for(i=0;i<p;i++)
  for(j=0;j<p-i-1;j++)
   if(x[j]>x[j+1])
   {
    t=x[j];
    x[j]=x[j+1];
    x[j+1]=t;
   }
}
int array_a[100],array_b[100],n_a,n_b;
void input()
{
    int i;

	scanf("%d%d",&n_a,&n_b);
	for(i=0;i<n_a;i++)
		scanf("%d",&array_a[i]);
	for(i=0;i<n_b;i++)
		scanf("%d",&array_b[i]);
}
void order()
{
	int i,j,temp;

	for(i=1;i<n_a;i++)
		for(j=1;j<n_a+1-i;j++)
			if(array_a[j]<array_a[j-1])
			{
				temp=array_a[j];
				array_a[j]=array_a[j-1];
				array_a[j-1]=temp;
			}
	for(i=1;i<n_b;i++)
		for(j=1;j<n_b-i+1;j++)
			if(array_b[j]<array_b[j-1])
			{
				temp=array_b[j];
				array_b[j]=array_b[j-1];
				array_b[j-1]=temp;
			}
}
void catenate()
{
	int i;
	for(i=0;i<n_b;i++)
		array_a[n_a+i]=array_b[i];
}
void print()
{
	int i;
	for(i=0;i<n_a+n_b;i++)
		printf("%d%c",array_a[i],(i==n_a+n_b-1)?'\n':' ');
}
int main()
{
	input();
	order();
	catenate();
	print();
	return 0;
}
int a[1000],b[1000],i,j,n,m;
void read()
{
	scanf("%d %d",&m,&n);
	for(i=0;i<m;i++)
		scanf("%d",&a[i]);
	for(i=0;i<n;i++)
		scanf("%d",&b[i]);
}
void sort()
{	int t;
	for(i=0;i<m-1;i++)
		for(j=i;j<m;j++)
			if(a[j]<a[i])
			{
				t=a[j];
				a[j]=a[i];
				a[i]=t;
			}
	for(i=0;i<n-1;i++)
		for(j=i;j<n;j++)
			if(b[j]<b[i])
			{
				t=b[j];
				b[j]=b[i];
				b[i]=t;
			}
}
void add()
{
	for(i=m,j=0;j<n;i++,j++)
	{
		a[i]=b[j];
	}
}
void print()
{
	for(i=0;i<m+n;i++)
	{
		if(i)
			printf(" ");
		printf("%d",a[i]);
	}
	printf("\n");
}

void main()
{
	read();
	sort();
	add();
	print();
}
void main()
{
	void reserve();
	reserve();
}

void reserve()
{
	void paixu(int a[],int k);
	int x,y;
	int i,j;
	int a[20],b[20];
	scanf("%d%d",&x,&y);
	for(i=0;i<x;i++)scanf("%d",&a[i]);
	for(i=0;i<y;i++)scanf("%d",&b[i]);

	paixu(a,x);
	paixu(b,y);
	
	for(j=0;j<y;j++)a[x+j]=b[j];
	for(j=0;j<x+y-1;j++)printf("%d ",a[j]);
	printf("%d\n",a[j]);
}

void paixu(int a[],int k)
{
	int i,j,temp;
	for(j=0;j<k;j++)
	{
		for(i=0;i<k-j-1;i++)
		{
			if(a[i]>a[i+1])
			{
				temp=a[i];
				a[i]=a[i+1];
				a[i+1]=temp;
			}
		}
	}
}
int cmp(const void *a,const void *b){
  return *(int *)a>*(int *)b;
};

int L1,L2;
int ar1[MAX],ar2[MAX];

void read_array();
void sort_array();
void merge_array();
void show_array();

int main(){
  read_array();
  sort_array();
  merge_array();
  show_array();
  return 0;
}

void read_array(){
  memset(ar1,0,sizeof(ar1));
  memset(ar2,0,sizeof(ar2));
  
  cin>>L1>>L2;
  
  for(int i=0;i<L1;i++) cin>>ar1[i];
  for(int i=0;i<L2;i++) cin>>ar2[i];

}

void sort_array(){
  qsort(ar1,L1,sizeof(int),cmp);
  qsort(ar2,L2,sizeof(int),cmp);
}

void merge_array(){
  for(int i=0;i<L2;i++)
    ar1[L1+i]=ar2[i];
}

void show_array(){
  for(int i=0;i<L1+L2;i++){
    cout<<ar1[i];
    if(i!=L1+L2-1) cout<<' ';
  }
}
int a[1000],b[1000],n1,n2;
void get(int a[],int b[])
{
     int i;
     cin>>n1>>n2;
     for (i=0;i<n1;i++) cin>>a[i];
     for (i=0;i<n2;i++) cin>>b[i];
}
void sort(int a[],int b[])
{
     int i,j,temp;
     for (i=0;i<n1;i++)
     {
         for (j=i;j<n1;j++)
         {
             if (a[i]>a[j])
             {
                 temp=a[i];
                 a[i]=a[j];
                 a[j]=temp;
             }
         }
     }
     for (i=0;i<n2;i++)
     {
         for (j=i;j<n2;j++)
         {
             if (b[i]>b[j])
             {
                 temp=b[i];
                 b[i]=b[j];
                 b[j]=temp;
             }
         }
     }
}
void combine(int a[],int b[])
{
     int i;
     for (i=0;i<n2;i++) a[i+n1]=b[i];
}
void print(int a[],int b[])
{
     int i;
     for (i=0;i<n1+n2-1;i++) cout<<a[i]<<" ";
     cout<<a[n1+n2-1];
}
int main()
{
    get(a,b);
    sort(a,b);
    combine(a,b);
    print(a,b);
    return 0;
}
int n,m,a[100]={0},b[100]={0},c[200]={0};
void duqu()
{
	int *p;
	scanf("%d %d",&m,&n);
	for(p=a;p<a+m;p++)
		scanf("%d",p);
	for(p=b;p<b+n;p++)
		scanf("%d",p);
}
void range(int a[],int b[],int m,int n)
{
	int *p,*q,d;
	for(p=a;p<a+m-1;p++)
		for(q=p+1;q<a+m;q++)
			if(*p>*q)
			{
				d=*p;
				*p=*q;
				*q=d;
			}
		for(p=b;p<b+n-1;p++)
			for(q=p+1;q<b+n;q++)
			if(*p>*q)
			{
				d=*p;
				*p=*q;
				*q=d;
			}

}
void merge(int a[],int b[],int m,int n)
{
	int *p,*q;
	for(p=c,q=a;q<a+m;p++,q++)
		*p=*q;
	for(p=c+m,q=b;q<b+n;p++,q++)
		*p=*q;
}
void show(int c[],int d)
{
	int *p;
	for(p=c;p<c+d-1;p++)
		printf("%d ",*p);
	printf("%d",*p);
}
void main()
{
	duqu();
	range(a,b,m,n);
	merge(a,b,m,n);
	show(c,m+n);
}
int a[100],b[100],c[100];
int num1;
int num2;
void main()
{
	void read();
	void queue();
	void combine();
	void put();
	read();
	queue();
	combine();
	put();
}
void read()
{
	int i;
	scanf("%d %d",&num1,&num2);
	for(i=0;i<num1;i++)
	{
		scanf("%d",&a[i]);
	}
	for(i=0;i<num2;i++)
	{
		scanf("%d",&b[i]);
	}
}
void queue()
{
	int i,j,t;
	for (i=0;i<num1-1;i++)
	{
		for (j=0;j<num1-i-1;j++)
		{
			if (a[j]>a[j+1])//???
			{
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;
			}
		}
	}
	for (i=0;i<num2-1;i++)
	{
		for (j=0;j<num2-i-1;j++)
		{
			if (b[j]>b[j+1])//???
			{
				t=b[j];
				b[j]=b[j+1];
				b[j+1]=t;
			}
		}
	}
}
void combine()
{
	int i;
	for (i=0;i<num1;i++)
	{
		c[i]=a[i];
	}
	for (i=0;i<num2;i++)
	{
		c[i+num1]=b[i];
	}
}
void put()
{
	int i;
	for(i=0;i<num1+num2-1;i++)
	{
		printf("%d ",c[i]);
	}
	printf("%d",c[num1+num2-1]);
}
void main()
{
 void f(int a[2][200],int m,int n);
 int i,j,a[2][200],m,n;
 scanf("%d%d",&m,&n);
 for(i=0,j=0;j<m;j++)
  scanf("%d",&a[0][j]);
 for(i=1,j=0;j<n;j++)
  scanf("%d",&a[1][j]);
 f(a,m,n);
 for(i=0,j=0;j<m;j++)
  printf("%d ",a[0][j]);
 for(i=1,j=0;j<n-1;j++)
  printf("%d ",a[1][j]);
 printf("%d",a[1][n-1]);
}
void f(int a[2][200],int m,int n)
{
 int i,j,t;
 for(i=0;i<m-1;i++)
 {
  for(j=i+1;j<m;j++)
  {
   if(a[0][j]<a[0][i])
   {t=a[0][j]; a[0][j]=a[0][i]; a[0][i]=t;}
  }
 }

 for(i=0;i<n-1;i++)
 {
  for(j=i+1;j<n;j++)
  {
   if(a[1][j]<a[1][i])
   {t=a[1][j]; a[1][j]=a[1][i]; a[1][i]=t;}
  }
 }

}
int m,n,x[100],y[100],z[100];
void main ()
{
	void read();
	void orde(int c[100],int d[100]);
	void resm(int e[100],int f[100]);
	void show(int g[100]);
	read( );
	orde(x,y);
	resm(x,y);
	show(x);
}
void read( )
{   
	int i;
	scanf("%d %d",&m,&n);
	for(i=0;i<m;i++)
		scanf("%d",&x[i]);
    for(i=0;i<n;i++)
        scanf("%d",&y[i]);
}
void orde(int c[100],int d[100])
{
    int i,j,q;
	for(i=0;i<m-1;i++)
		for(j=0;j<m-i-1;j++)
		{
			if(c[j+1]<c[j])
			{	q=c[j+1];
			    c[j+1]=c[j];
				c[j]=q;
			}
		}
		for(i=0;i<m;i++)
		{
			x[i]=c[i];
		}
		for(i=0;i<n-1;i++)
        for(j=0;j<n-i-1;j++)
		{
			if(d[j+1]<d[j])
			{	q=d[j+1];
			    d[j+1]=d[j];
				d[j]=q;
			}
		}
		for(i=0;i<n;i++)
		{
			y[i]=d[i];
		}
}
void resm(int e[100],int f[100])
{
	int i;
	for(i=0;i<n;i++)
		e[i+m]=f[i];
	for(i=0;i<100;i++)
		x[i]=e[i];
}
void show(int g[100])
{
	int i;
	for(i=0;i<m+n-1;i++)
		printf("%d ",x[i]);
	printf("%d\n",x[m+n-1]);
}
int m[100],n[100],*p,*q,a,b;
void input()
{
	p=m;q=n;
	int i;
	scanf("%d %d",&a,&b);
	for(i=0;i<a;i++,p++)
	{
		scanf("%d",p);
	}
	for(i=0;i<b;i++,q++)
	{
		scanf("%d",q);
	}
	p=m;q=n;
}
void sort(int *p,int a)
{
	int i,j,temp;
	for(i=0;i<a-1;i++)
	{
		for(j=0;j<a-i-1;j++)
		{
			if(p[j]>p[j+1])
			{
				temp=p[j];p[j]=p[j+1];p[j+1]=temp;
			}
		}
	}
}
void mix()
{
	int i;
	for(i=0;i<b;i++)
	{
		p[a+i]=q[i];
	}
}
void output()
{
	int i;
	for(i=0;i<a+b-1;i++)
	{
		printf("%d ",*(p++));
	}
	printf("%d\n",*p);
}
main()
{
	input();
	sort(p,a);
	sort(q,b);
	mix();
	output();
	return 0;
}
void f1(int a[],int e);
void f2(int b[],int f);
void f3(int c[],int h,int d[],int l);
void main()
{
	int shuzu1[200],shuzu2[200];
	int geshu1,geshu2;
	scanf("%d%d",&geshu1,&geshu2);
	f1(shuzu1,geshu1);
	f1(shuzu2,geshu2);
	f2(shuzu1,geshu1);
	f2(shuzu2,geshu2);
	f3(shuzu1,geshu1,shuzu2,geshu2);
}
void f1(int a[],int e)
{
	int i;
	for(i=0;i<e;i++)
	{
		scanf("%d",&a[i]);
	}
}
void f2(int b[],int f)
{
	int k,t,g;
	for (k=0;k<f-1;k++)
	{
		for(t=0;t<f-1;t++)
		{
			if(b[t]>b[t+1])
			{
				g=b[t];
				b[t]=b[t+1];
				b[t+1]=g;
			}
		}
	}
}
void f3(int c[],int h,int d[],int l)
{
	int z;
	for(z=0;z<h;z++)
	{
		printf("%d ",c[z]);
	}
	for(z=0;z<l-1;z++)
	{
		printf("%d ",d[z]);
	}
	printf("%d",d[l-1]);
}
int m=0,n=0,a[100],b[100];
int *pointer1=&m,*pointer2=&n;
void input(int *r,int *s,int *x,int *y)
{
	int i;
	scanf("%d %d",r,s);
	for(i=0;i<*r;i++)
	{
		scanf("%d",x+i);
	}
	for(i=0;i<*s;i++)
	{
		scanf("%d",y+i);
	}
}
void sort(int *t,int *p)
{
	int i,j,r,s;
	for(i=0;i<(*t)-1;i++)
	{
        r=i;
		for(j=i+1;j<*t;j++)
			if(*(p+j)<*(p+r)) r=j;
		if(r!=i)
		{
			s=*(p+i);
			*(p+i)=*(p+r);
			*(p+r)=s;
		}
	}
}
void output(int *x,int *y,int *p1,int *p2)
{
	int i;
	for(i=0;i<*x;i++)
		printf("%d ",*(p1+i));
	for(i=0;i<*y;i++)
		printf("%d%c",*(p2+i),(i<(*y)-1)?' ':'\n');
}
void main()
{
	input(pointer1,pointer2,a,b);
	sort(pointer1,a);
	sort(pointer2,b);
	output(pointer1,pointer2,a,b);
}
void main()
{
	void order(int a[],int b[],int m,int n);
	int a[100],b[100];
	int m,n,i;
	scanf("%d %d",&m,&n);
	for(i=0;i<m;i++)
		scanf("%d",&a[i]);
	for(i=0;i<n;i++)
		scanf("%d",&b[i]);
	order(a,b,m,n);
	for(i=0;i<m+n-1;i++)
		printf("%d ",a[i]);
	printf("%d",a[m+n-1]);
}
void order(int a[],int b[],int m,int n)
{
	int i,j;
	int t;
	for(i=0;i<m-1;i++)
		for(j=0;j<m-i-1;j++)
		   if(a[j]>a[j+1])
			{
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;}
    for(i=0;i<n-1;i++)
		for(j=0;j<n-i-1;j++)
		   if(b[j]>b[j+1])
			{
				t=b[j];
				b[j]=b[j+1];
				b[j+1]=t;}
   for(i=m;i<m+n;i++)
        a[i]=b[i-m];
   return;}
main()
{   
  int x,y;
  void forget(int,int);
  forget(x,y);
  return 0;
}	
void forget(int x,int y)
 {
   int i,j,k,t,T;
   int a[max]={0},b[max];
    scanf("%d %d",&x,&y);
	for(i=0;i<x;i++)
	{
		scanf("%d",&a[i]);
	}
	for(i=0;i<y;i++)
	{
		scanf("%d",&b[i]);
	}
	for(i=0;i<x-1;i++)
	{
	for(j=i+1;j<x;j++)
	{
		if(a[i]>a[j])
		{
			t=a[j];
			a[j]=a[i];
			a[i]=t;
		}
	}}


	for(i=0;i<y-1;i++)
	{
	for(j=i+1;j<y;j++)
	{
		if(b[i]>b[j])
		{
			T=b[j];
			b[j]=b[i];
			b[i]=T;
		}
	}}
	printf("%d",a[0]);
	for(j=1;j<x;j++)
	printf(" %d",a[j]);
	for(j=0;j<y;j++)
	printf(" %d",b[j]);
	

}
void sort(int a[],int n);
int main()
{
    int m,n,i,j,a[100],b[100];
	cin>>m>>n;
	for (i = 0; i<m; i++) {     
		scanf("%d",&a[i]);
	}
	sort(a,m);	
	for(j=0;j<n;j++){
		scanf("%d",&b[j]);
	}
	sort(b,n);
    for(i = 0;i < m;i++)
	cout<<a[i]<<" ";
	for(j=0;j<n-1;j++)
	cout<<b[j]<<" ";
	cout<<b[n-1];
	return 0;
}
void sort(int a[],int n)
{
 int i,j,index,temp;

 for(i=0;i<n-1;i++)
 {

  index=i;
  for(j=i+1;j<n;j++)
  {
   if(a[index]>a[j])
    index=j;
  }
        temp=a[i];
  a[i]=a[index];
  a[index]=temp;
 }
}
int m,n;
int i,j,k;
int q[10000],p[10000];

void a()
{
	cin >>m >>n;
	for (i=0;i<m;i++)
	{
		cin >>p[i];
	}
	for (i=0;i<n;i++)
	{
		cin >>q[i];
	}
}
void b(int x[],int y[])
{
	for (i=1;i<m;i++)
	{
		for (j=0;j<m-i;j++)
		//cout <<x[j] <<x[j+1];
		if (x[j]>x[j+1])
		{
			k=x[j+1];
			x[j+1]=x[j];
			x[j]=k;
		}
	}
	for (i=1;i<n;i++)
	{
		for (j=0;j<n-i;j++)
		//cout <<x[j] <<x[j+1];
		if (y[j]>y[j+1])
		{
			k=y[j+1];
			y[j+1]=y[j];
			y[j]=k;
		}
	}
	for (i=0;i<m;i++)
	{
		cout <<x[i] <<' ';
	}
	for (i=0;i<n-1;i++)
	{
		cout <<y[i] <<' ';
	}
	cout <<y[n-1] <<endl;
}

int main ()
{
	a();
	b(p,q);
	return (0);
}
int m,n;
void get (int a[200],int b[200])
{
 int i;
 scanf("%d %d",&m,&n);
 for (i=0;i<m;i++)
  scanf("%d",&a[i]);
 for (i=0;i<n;i++)
  scanf("%d",&b[i]);
}
void sequence (int a[200], int p)
{
 int i,j,temp;
 for (i=0;i<p;i++)
  for (j=i+1;j<p;j++)
   if (a[j]<a[i])
   {
    temp=a[i];
    a[i]=a[j];
    a[j]=temp;
   }
  // printf("G");
}
void combine (int a[200],int p,int b[200],int q)
{
 int j;
 for (j=0;j<q;j++)
  a[p+j]=b[j];
}
void show (int a[200], int p)
{
 int i;
 for (i=0;i<p-1;i++)
 {
  printf("%d ",a[i]);
 }
 printf("%d",a[p-1]);
}
void main ()
{
 int a[200],b[200];
 get (a,b);
 sequence (a,m);
 sequence (b,n);
 combine (a,m,b,n);
 show (a,m+n);
}
/*
 *???: model programming.cpp
 *??????
 *????: 2012-11-18
 *??: ?????
 */


int num1[1000],num2[1000],a,b;

void cin_array(int num1[],int num2[])
{
    cin >> a >> b;
    for (int i = 0; i < a; i++) cin >> num1[i];
    for (int i = 0; i < b; i++) cin >> num2[i];
}//??a?b?????

void sort(int num1[],int num2[])
{
    int temp;
    for (int i = 1; i <= a; i++)
        for (int j = 0; j < a - i; j++)
            if (num1[j] > num1[j+1]){
                temp = num1[j];
                num1[j] = num1[j+1];
                num1[j+1] = temp;
            }
    for (int i = 1; i <= b; i++)
        for (int j = 0; j < b - i; j++)
            if (num2[j] > num2[j+1]){
                temp = num2[j];
                num2[j] = num2[j+1];
                num2[j+1] = temp;
            }
}//???????????

void connect(int num1[], int num2[])
{
    for (int i = 0; i < b; i++)
        num1[a + i] = num2[i];
}//??

void cout_array(int num[])
{
    for (int i = 0; i < a + b - 1; i++)
        cout << num[i] << " ";
    cout << num[a+b-1];
}//??

int main ()
{
    cin_array(num1,num2);
    sort(num1,num2);
    connect(num1,num2);
    cout_array(num1);
    return 0;
}
int pai1 (int x[1000] ,int y);
int pai2 (int x[1000] ,int y);
int main ()
{
    int n, m, i, j;
    int a[1000],b[1000];
    scanf ("%d %d\n", &n, &m);
    for (i=0;i<n;i++)
    {
        scanf ("%d\n",&a[i]);
    }
    
    for (j=0;j<m;j++)
    {
        scanf ("%d",&b[j]);
    }
    pai1 (a,n);
	pai2 (b,m);
}


int pai1(int x[] ,int y)
{
    int i,j,min,stmp,flag=0;
	
    for(i=0;i<y;i++)
    {
        min=x[i];
        for(j=i+1;j<y;j++)
            if(min>x[j])        
            {
                min=x[j];
                stmp=x[i];
                x[i]=x[j];
                x[j]=stmp;
            }
    }
    for(i=0;i<y;i++)
	{  
		if (flag==0)
		{
			printf("%d" , x[i]);
			flag=1;
			continue;
		}
		if (flag==1)
		{
			printf(" %d" , x[i]);
		}
	}
	return 0;
} 
int pai2(int x[] ,int y)
{
    int i,j,min,stmp;
	
    for(i=0;i<y;i++)
    {
        min=x[i];
        for(j=i+1;j<y;j++)
            if(min>x[j])        
            {
                min=x[j];
                stmp=x[i];
                x[i]=x[j];
                x[j]=stmp;
            }
    }
    for(i=0;i<y;i++)
        printf(" %d" , x[i]);    
	return 0;
}
int n,m,i,j;
int a[10000];
void input()
{
cin>>n>>m;
for(i=0;i<n+m;i++)
cin>>a[i];
}

void fsort()
{
 sort(a,a+n);
 sort(a+n,a+n+m);
}
void print(){
	cout<<a[0];
	for(i=1;i<n+m;i++)
	cout<<' '<<a[i];
}
int main()
{input();
 fsort();
 print();
return 0;
}
int main()
{
	int length[2]={0},a[2][100]={0},i,j,t,m;
	cin>>length[0]>>length[1];
	for (i=0;i<2;i++)
		for (j=0;j<length[i];j++)
			cin>>a[i][j];
	for (i=0;i<2;i++)
		for (m=1;m<length[i];m++)
			for (j=0;j<length[i]-m;j++)
				 if (a[i][j]>a[i][j+1])
				{
					t=a[i][j];
					a[i][j]=a[i][j+1];
					a[i][j+1]=t;
				}
	for (j=0;j<length[0];j++)
		cout<<a[0][j]<<" ";
	cout<<a[1][0];
	for (j=1;j<length[1];j++)
		cout<<" "<<a[1][j];
	return 0;
}
int* num (int a)
{
     int *p,i;
     p=(int*)malloc(a*sizeof(int));
     for (i=0;i<a;i++)
     {
         scanf("%d",&p[i]);
     }
     return  p;
}

void rank(int*p,int a)
{
     int i,j,t;
     for (i=a-1;i>0;i--)
     {
         for (j=0;j<i;j++)
         {
             if (*(p+j)>*(p+j+1))    //??????????
             {
                 t=*(p+j);
                 *(p+j)=*(p+j+1);
                 *(p+j+1)=t;
             }
         }
     }
}

int* add(int*p1,int*p2,int a,int b)
{
     int i;
     int* p3=(int*)malloc((a+b)*sizeof(int));
     for (i=0;i<a;i++)
     *(p3+i)=*(p1+i);
     for(i=0;i<b;i++)
     *(p3+a+i)=*(p2+i);
     return p3;
}

void print(int *p3,int x)
{
     int i;
     for (i=0;i<x;i++)
     {
         if (i==0)
         printf ("%d",p3[0]);
         else
         printf (" %d",p3[i]);
     }
}

main()
{
      int a,b,*p1,*p2,*p3;
      scanf ("%d",&a);scanf("%d",&b);
      p1=num(a);p2=num(b);
      rank(p1,a);rank(p2,b);
      p3=add (p1,p2,a,b);
      print(p3,(a+b));
      free(p1);free(p2);free(p3);
}
void main()
{
	void read();
    read();
}
void read()
{
	int a,b;
	void shu(int x,int y);
	scanf("%d%d",&a,&b);
	shu(a,b);
}
void shu(int x,int y)
{
	int a[100],b[100],i;
	void pai(int a[],int x,int b[],int y);
	for(i=0;i<x;i++)
	{
		scanf("%d",&a[i]);
	}
	for(i=0;i<y;i++)
	{
		scanf("%d",&b[i]);
	}
	pai(a,x,b,y);
}
void pai(int a[],int x,int b[],int y)
{
	int i,k,m;
	void pr(int a[],int x,int b[],int y);
	for(i=0;i<x-1;i++)
	{
		for(k=0;k<x-1-i;k++)
		{
			if(a[k]>a[k+1])
			{
				m=a[k+1];
				a[k+1]=a[k];
				a[k]=m;
			}
		}
	}
	for(i=0;i<y-1;i++)
	{
		for(k=0;k<y-1-i;k++)
		{
			if(b[k]>b[k+1])
			{
				m=b[k+1];
				b[k+1]=b[k];
				b[k]=m;
			}
		}
	}
	pr(a,x,b,y);
}
void pr(int a[],int x,int b[],int y)
{
	int i;
	printf("%d",a[0]);
	for(i=1;i<x;i++)
	{
		printf(" %d",a[i]);
	}
	for(i=0;i<y;i++)
		printf(" %d",b[i]);
}
void paixu(int n,int a[1000]){
	if(n==0) return;
	int x,i;
	int min=a[0];
	for(x=0;x<n;x++){
		if(a[x]<=min)
			min=a[x];
	}
	if(n>1)
	cout<<min<<' ';
	if(n==1)
		cout<<min;
	for(x=0;x<n;x++){
		if(a[x]==min)
			break;
	}
	for(i=x;i<n-1;i++)
		a[i]=a[i+1];
	return paixu(n-1,a);
}
int main(){
	int m1,m2,x;
	int s[1000];
	memset(s,0,sizeof(s));
	cin>>m1>>m2;
	for(x=0;x<m1;x++)
		cin>>s[x];
	paixu(m1,s);
	cout<<' ';
	memset(s,0,sizeof(s));
	for(x=0;x<m2;x++)
		cin>>s[x];
	paixu(m2,s);
	return 0;
}
int m,n,a[200],b[100];
int main()
{
	void getarray();
	void paixu(int s[],int t);
	void hebin();
	void print();
	getarray();
	paixu(a,m);
	paixu(b,n);
	hebin();
	print();
	return 0;
}
void getarray()
{
	int i;
	scanf("%d%d",&m,&n);
	for(i=0;i<m;i++)
		scanf("%d",&a[i]);
	for(i=0;i<n;i++)
		scanf("%d",&b[i]);
}
void paixu(int s[],int t)
{
	int i,j,temp;
	for(j=1;j<t;j++)
		for(i=0;i<t-j;i++)
			if(s[i]>s[i+1]){
				temp=s[i];
				s[i]=s[i+1];
				s[i+1]=temp;
			}
}
void hebin()
{
	int i;
	for(i=m;i<m+n;i++)
		a[i]=b[i-m];
}
void print()
{
	int i;
	printf("%d",a[0]);
	for(i=1;i<m+n;i++)
		printf(" %d",a[i]);
}