semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
void sheng(int *a,int n)
{
        int i,j,b;
        for(i=0;i<n;i++)
        {
        for(j=i;j<n;j++)
        {
        if (a[j]<a[i])
        
          {
          b=a[i];
          a[i]=a[j];
          a[j]=b;
          }
          }
        }
}
int hebing(int* a ,int n,int *b ,int m,int *c)
{
       
       int i;
       for(i=0;i<n;i++)
       c[i]=a[i];
       for(i=n;i<m+n;i++)
       c[i]=b[i-n];
       return *c;
}
int main()
{
int n,m,i;
scanf("%d %d",&n,&m);
int *a=(int*)malloc(sizeof(int)*n);
int *b=(int*)malloc(sizeof(int)*m);
int *c=(int*)malloc(sizeof(int)*(m+n));
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<m;i++)
scanf("%d",&b[i]);
sheng(a,n);
sheng(b,m);
hebing(a,n,b,m,c);
printf("%d",c[0]);
for(i=1;i<m+n;i++)
printf(" %d",c[i]);

}
void input(int a[],int b[])
{
	int i,m,n;
	scanf("%d %d",&a[49],&b[49]);
	m=a[49];
	n=b[49];
	for(i=0;i<m;i++)
		scanf("%d",&a[i]);
	for(i=0;i<n;i++)
		scanf("%d",&b[i]);
}
void order(int m,int n,int a[],int b[])
{
	int i,j,t;
	for(j=0;j<m-1;j++)
	{
		for(i=0;i<m-1-j;i++)
		{if(a[i]>a[i+1])
			{t=a[i];a[i]=a[i+1];a[i+1]=t;}
		}
	}
	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;}
		}
	}
}
void comb(int m,int n,int a[],int b[],int c[])
{
	int i;
	for(i=0;i<m;i++)
		c[i]=a[i];
	for(i=m;i<(m+n);i++)
		c[i]=b[i-m];
}
void print(int m,int n,int c[])
{
	int i;
	printf("%d",c[0]);
	for(i=1;i<(m+n);i++)
		printf(" %d",c[i]);
}
void main()
{
	int a[50],b[50],c[100];
	input(a,b);
	order(a[49],b[49],a,b);
	comb(a[49],b[49],a,b,c);
	print(a[49],b[49],c);
}
int a,b,i,j,t,c[20],d[20],e[40];
void in()
{
scanf("%d%d",&a,&b);
for(i=0;i<a;i++)
scanf("%d",&c[i]);
for(i=0;i<b;i++)
scanf("%d",&d[i]);
}

void order()
{
 for(i=0;i<a-1;i++)
  for(j=0;j<a-1-i;j++)
   if(c[j]>c[j+1]) {t=c[j];c[j]=c[j+1];c[j+1]=t;}
 for(i=0;i<b-1;i++)
  for(j=0;j<b-1-i;j++)
   if(d[j]>d[j+1]) {t=d[j];d[j]=d[j+1];d[j+1]=t;}
}

void combine()
{
 for(i=0;i<a;i++)
  e[i]=c[i];
 for(i=0;i<b;i++)
  e[a+i]=d[i];
}

void out()
{
 for(i=0;i<a+b-1;i++)
  printf("%d ",e[i]);
 printf("%d",e[a+b-1]);
}

void main()
{
 in();
 order();
 combine();
 out();
}
int order(int n,int a[]){
	int i,j,k;
	for(i=0;i<n;i++)
	for(j=i;j<n;j++)
	if(a[i]>a[j]) {k=a[i];a[i]=a[j];a[j]=k;}
}
int combine(int a[],int b[],int n,int m,int c[]){
	int i,j,k;
	for(i=0;i<n;i++) c[i]=a[i];
	for(j=0;j<m;j++,i++) c[i]=b[j];
}
int input(int n,int a[]){
	int i;
	for(i=0;i<n;i++) scanf("%d",&a[i]);
}
int output(int n,int a[]){
	int i;
	for(i=0;i<n;i++)  {printf("%d",a[i]);if(i<n-1) printf(" ");}
}
int main(){
	int n,m;
	scanf("%d %d",&n,&m);
	int a[n],b[m],c[n+m];
	input(n,a);
	input(m,b);
	order(n,a);
	order(m,b);
	combine(a,b,n,m,c);
	output(n+m,c);
	return 0;
}
int Compare(const void *elem1,const void *elem2)
{
	return *((int *)elem1)-*((int *)elem2);
}
int main()
{
	int m,n;
	int a[100],b[100];
	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]);
	}
	qsort(a,m,sizeof(int),Compare);
	qsort(b,n,sizeof(int),Compare);
	for(i=0;i<m;i++)
	{
		printf("%d ",a[i]);
	}
	for(i=0;i<n-1;i++)
	{
		printf("%d ",b[i]);
	}
	printf("%d",b[n-1]);
}
/*
 * mokuai.cpp
 *
 *  Created on: 2012-11-25
 *      Author: wangyinzhi
 */

int f(int x,int y){
	int a[x],b[y];
	int t,i,j;
	for( i=0;i<x;i++){
		cin>>a[i];}
	for(j=0;j<y;j++){
			cin>>b[j];}//??

	for(i=0;i<x-1;i++){
		for(j=0;j<x-1-i;j++){
			if(a[j]>a[j+1]){
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;//????
			}
		}
	}
	for(i=0;i<y-1;i++){
		for(j=0;j<y-1-i;j++){
			if(b[j]>b[j+1]){
				t=b[j];
				b[j]=b[j+1];
				b[j+1]=t;//????
			}
		}
	}
	for(i=0;i<x;i++){
		if(i==0)cout<<a[i];
		else cout<<" "<<a[i];
	}
	for(i=0;i<y;i++){
       cout<<" "<<b[i];//????
	}
}

int main(){
	int x,y;
	cin>>x>>y;
	f(x,y);//??
	return 0;
}
int len1, len2, array1[100], array2[100],sa[100];
void zp1(int a1[100], int l1) {
	int cur1;
	for (int i = 0; i < l1 - 1; i++)
		for (int j = 0; j < l1 - 1 - i; j++)
			if (a1[j] > a1[j + 1]) {
				cur1 = a1[j];
				a1[j] = a1[j + 1];
				a1[j + 1] = cur1;
			}
}
void zp2(int a2[100], int l2) {
	int cur2;
	for (int i = 0; i < l2 - 1; i++)
		for (int j = 0; j < l2 - 1 - i; j++)
			if (a2[j] > a2[j + 1]) {
				cur2 = a2[j];
				a2[j] = a2[j + 1];
				a2[j + 1] = cur2;
			}
}
void connection(int a1[100],int a2[100])
{
	for (int i=0;i<len1;i++)
		sa[i]=array1[i];
	for (int i=len1;i<len1+len2;i++)
		sa[i]=array2[i-len1];
}

int main() {

	cin >> len1 >> len2;
	for (int i=0;i<len1;i++)
		cin>>array1[i];
	for (int i=0;i<len2;i++)
		cin>>array2[i];
	zp1(array1, len1);
	zp2(array2, len2);
	connection(array1, array2);
	cout<<sa[0];
	for (int i=1;i<len1+len2;i++)
		cout<<" "<<sa[i];
	cout<<endl;
	return 0;
}
// ??????????2.cpp : ??????????????
//


int a[5000],b[5000],N1,N2,c[10000];
int f1()
{
	int n;
	scanf("%d%d",&N1,&N2);
	for(n=0;n<=N1-1;n++)
	{
		scanf("%d",&a[n]);
	}
	for(n=0;n<=N2-1;n++)
	{
		scanf("%d",&b[n]);
	}
	return 0;
}
int f2()
{
	int i,j,t;
	for(i=1;i<=N1-1;i++)
	{
		for(j=0;j<=N1-i-1;j++)
		{
			if(a[j]>a[j+1])
			{
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;
			}
		}
	}
	for(i=1;i<=N2-1;i++)
	{
		for(j=0;j<=N2-i-1;j++)
		{
			if(b[j]>b[j+1])
			{
				t=b[j];
				b[j]=b[j+1];
				b[j+1]=t;
			}
		}
	}
	return 0;
}
int f3()
{
	int i,j;
	for(i=0;i<=N1-1;i++)
	{
		c[i]=a[i];
	}
	for(i=N1,j=0;i<=N1+N2-1;i++,j++)
	{
		c[i]=b[j];
	}
	return 0;
}
int f4()
{
	int i;
	printf("%d",c[0]);
	for(i=1;i<=N1+N2-1;i++)
	{
		printf(" %d",c[i]);
	}
	return 0;
}
int main()//(int argc, _TCHAR* argv[])
{
	f1();
	f2();
	f3();
	f4();
}
int a[10000];
int b[10000];
int n,m;
void du()
{
cin>>n>>m;
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=0;i<m;i++)
cin>>b[i];
}
void ran()
{
 for(int i=0;i<n;i++)    
  { int temp=a[i];
           for(int j=i-1;j>=0;j--)
     {
         if(a[j]<=temp)    
          {  a[j+1]=temp;break;} 
         else   {a[j+1]=a[j];a[j]=temp;}
           
          
   
   }  
}
  
 for(int i=0;i<m;i++)    
  { int temp=b[i];
           for(int j=i-1;j>=0;j--)
     {
         if(b[j]<=temp)    
          {  b[j+1]=temp;break;} 
         else   {b[j+1]=b[j];b[j]=temp;}
           
          
  }
   } 
 }
void he()
{
for(int i=n;i<n+m;i++)     
    a[i]=b[i-n]; 
     
     }
void shu()
{
for(int i=0;i<n+m-1;i++)     
    cout<<a[i]<<' ';
  cout<<a[n+m-1];   
     }
int main()
{ 
du();
ran();
he();
shu();

   return 0;
    
}
int s1,s2;
int reads()
{
	int a;
	cin>>a;
	return a;
}
void reada(int a[])
{
	for(int i=1;i<=s1;i++)
	{
		cin>>a[i];
	}
}
void readb(int b[])
{
	for(int i=1;i<=s2;i++)
	{
		cin>>b[i];
	}
}
void reordera(int a[])
{
	for(int i=1;i<=s1-1;i++)
		for(int j=1;j<=s1-i;j++)
		{
			if(a[j]>a[j+1])
			{
				int m=a[j];
				a[j]=a[j+1];
				a[j+1]=m;
			}
		}
}
void reorderb(int b[])
{
	for(int i=1;i<=s2-1;i++)
		for(int j=1;j<=s2-i;j++)
		{
			if(b[j]>b[j+1])
			{
				int m=b[j];
				b[j]=b[j+1];
				b[j+1]=m;
			}
		}
}
void hebing(int a[],int b[],int c[])
{
	for(int i=1;i<=s1;i++)
		c[i]=a[i];
	for(int i=s1+1;i<=s1+s2;i++)
		c[i]=b[i-s1];
}
void output(int c[])
{
	for(int i=1;i<=s1+s2-1;i++)
		cout<<c[i]<<" ";
	cout<<c[s1+s2];
}

int main()
{
	int a[500],b[500],c[1000];
	s1=reads();//???????????
	s2=reads();
	reada(a);//???????
	readb(b);//???????
	reordera(a);//??????????
	reorderb(b);//??????????
	hebing(a,b,c);//??????
	output(c);//????????
	return 0;
}
/*
 * wanyi.cpp
 *
 *  Created on: 2012-11-14
 *      Author: 7
 */
int n,m;
int a[100],b[100],c[200];
void in()
{
	cin>>n>>m;
	int i;
	for(i=0;i<n;i++)
		cin>>a[i];
	for(i=0;i<m;i++)
		cin>>b[i];
}
void pai(int *p,int k)
{
	int i,j,temp;
	for(i=0;i<k;i++)
		for(j=0;j<k-i-1;j++)
		{
			if(p[j]>p[j+1])
			{
				temp=p[j];
				p[j]=p[j+1];
				p[j+1]=temp;
			}
		}
}
void he()
{
	int i;
	for(i=0;i<n;i++)
		c[i]=a[i];
	for(i=0;i<m;i++)
		c[i+n]=b[i];
}
void out()
{
	int i;
    cout<<c[0];
	for(i=1;i<n+m;i++)
		cout<<" "<<c[i];
}
int main()
{
	in();
	pai(a,n);
	pai(b,m);
	he();
	out();
}
int main()
{
	int m=0,n=0,i=0,j=0,a[100],b[100],temp=0;
	cin>>m>>n;
	for(i=0;i<m;i++)
		cin>>a[i];
	for(i=0;i<n;i++)
		cin>>b[i];
	for(i=0;i<m-1;i++)
		for(j=i+1;j<m;j++)
		{
			if(a[i]>a[j])
			{
				temp=a[i];
				a[i]=a[j];
				a[j]=temp;
			}
		}
	for(i=0;i<n-1;i++)
		for(j=i+1;j<n;j++)
		{
			if(b[i]>b[j])
			{
				temp=b[i];
				b[i]=b[j];
				b[j]=temp;
			}
		}
	for(i=0;i<m;i++)
		cout<<a[i]<<" ";
	for(i=0;i<n-1;i++)
		cout<<b[i]<<" ";
	cout<<b[n-1];
	return 0;
}
int a[1000],b[1000];
int n,m;
void read(){
	int i;
	cin>>n>>m;
	for(i=0;i<n;i++)
		cin>>a[i];
	for(i=0;i<m;i++)
		cin>>b[i];
}
void paixu(){
	int i,j,tem;
	for(i=0;i<n-1;i++){
		for(j=0;j<n-1-i;j++){
			if(a[j]>a[j+1]){
				tem=a[j];
				a[j]=a[j+1];
				a[j+1]=tem;
			}
		}
	}
	for(i=0;i<m-1;i++){
		for(j=0;j<m-1-i;j++){
			if(b[j]>b[j+1]){
				tem=b[j];
				b[j]=b[j+1];
				b[j+1]=tem;
			}
		}
	}
}
void combine(){
	int i;
	for(i=n;i<n+m;i++){
		a[i]=b[i-n];
	}
}
void put(){
	int i;
	for(i=0;i<m+n-1;i++)
		cout<<a[i]<<" ";
	cout<<a[i]<<endl;
}
int main(){
	read();
	paixu();
	combine();
	put();
	return 0;
}
int m,n,a[10],b[10],c[20];
void f()
{
   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 g()
{
   int i,j,k;
   for(j=0;j<m-1;j++)
         for(i=0;i<m-j-1;i++) 
			 if(a[i]>a[i+1])
     {
        k=a[i];
        a[i]=a[i+1];
        a[i+1]=k;
     }
     for(j=0;j<n-1;j++)
		 for(i=0;i<n-j-1;i++) 
             if(b[i]>b[i+1])
     {
        k=b[i];
        b[i]=b[i+1];
        b[i+1]=k;
     }
}
void u()
{
   int i;
   for(i=0;i<m;i++)
   c[i]=a[i];
   for(i=m;i<m+n;i++)
   c[i]=b[i-m];
}
void v()
{
   int i;
   for(i=0;i<m+n-1;i++)
   printf("%d ",c[i]);
   printf("%d",c[i]);
}
void main()
{
   f();
   g();
   u();
   v();
}
void input(int,int,int*,int*);//???? 
void paixu(int *,int);//????? 
void output(int,int,int*,int*);//????
 
int main()
{
    int num1,num2,shu1[10000],shu2[10000];
    cin>>num1>>num2;//?????? 
    input(num1,num2,shu1,shu2);//???? 
    paixu(shu1,num1);//???1?? 
    paixu(shu2,num2);//???2?? 
    output(num1,num2,shu1,shu2);//???? 
    cin.get();cin.get();cin.get();cin.get();
    return 0;
}
void input(int m,int n,int shu1[],int shu2[])//???? 
{
     int i;
     for(i=0;i<m;i++) cin>>shu1[i];
     for(i=0;i<n;i++) cin>>shu2[i];
}
void paixu(int shu[],int m)
{
     int i,j,temp;
     for(i=0;i<m-1;i++)//???? 
     {
                          for(j=0;j<m-i-1;j++)
                          {
                                            if (shu[j]>shu[j+1])
                                            {
                                                                temp=shu[j+1];
                                                                shu[j+1]=shu[j];
                                                                shu[j]=temp;
                                            }
                          }
     }
}
void output(int m,int n,int a[],int b[])
{
     int i;
     for(i=0;i<m;i++) cout<<a[i]<<" ";
     for(i=0;i<n-1;i++) cout<<b[i]<<" ";
     cout<<b[n-1];
}
int n,m;
int a[2][100];
void order(int x,int y)
{
	int i,j,t;
	for(i=0;i<y;i++)
		cin>>a[x][i];
	for(i=0;i<y-1;i++)
		for(j=0;j<y-1-i;j++)
			if(a[x][j]>a[x][j+1])
			{
				t=a[x][j];a[x][j]=a[x][j+1];a[x][j+1]=t;
			}
}
void output()
{
	int i;
	for(i=0;i<n;i++)
		cout<<a[0][i]<<" ";
	for(i=0;i<m-1;i++)
		cout<<a[1][i]<<" ";
	cout<<a[1][m-1];
}
int main()
{
	cin>>n>>m;
	order(0,n),order(1,m);
	output();
	return 0;
}
void main()
{
	void f(int r,int a[10000]);
	void g(int m,int n,int a[1000],int b[1000],int c[1000]);
	int m,n;
	scanf("%d %d",&m,&n);
	int a[1000],b[10000],c[1000],i,j;
	for(i=0;i<m;i++)
	scanf("%d",&a[i]);
	for(i=0;i<n;i++)
	scanf("%d",&b[i]);
	f(m,a);
	f(n,b);
    g(m,n,a,b,c);
	for(i=0;i<m+n-1;i++)
	printf("%d ",c[i]);
	printf("%d\n",c[m+n-1]);
}
void f(int r,int a[10000])
{
	int t,i,j;
    for(i=0;i<r-1;i++)
		for(j=0;j<r-i-1;j++)
			if(a[j]>a[j+1])
			{
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;
			}
}
void g(int m,int n,int a[1000],int b[1000],int c[1000])
{	
	int i;
	for(i=0;i<m+n;i++)
	{
		if(i<m)c[i]=a[i];
		else c[i]=b[i-m];
	}
}
int m,n; 
int a[100],b[100];

void read()
{
    cin>>m>>n;//num of a,num of b
    for(int i=1;i<=m;i++)
        cin>>a[i];
    for(int i=1;i<=n;i++)
        cin>>b[i];    
}

void sort_()
{
    sort(a+1,a+m+1);
    sort(b+1,b+n+1);    
}

void stick()
{
    for(int i=1;i<=n;i++)
        a[m+i]=b[i];    
}

void print()
{
    for(int i=1;i<m+n;i++)
    cout<<a[i]<<' ';
    cout<<a[m+n];
}


int main()
{
    read();
    sort_();
    stick();
    print();
    
    return 0;
}
int a[100],b[100];
int n_a,n_b;
void input();
void sort();
void output();
int main()
{
	input();
	sort();
	output();
	return 0;
}
void input()
{
	int i;
	cin>>n_a>>n_b;
	for(i=0;i<n_a;i++)
		cin>>a[i];
	for(i=0;i<n_b;i++)
		cin>>b[i];
}
void sort()
{
	int i,j,t;
	for(i=0;i<n_a-1;i++)
	{
		for(j=i+1;j<n_a;j++)
		{
			if(a[i]>a[j])
			{
				t=a[i];a[i]=a[j];a[j]=t;
			}
		}
	}
	for(i=0;i<n_b-1;i++)
	{
		for(j=i+1;j<n_b;j++)
		{
			if(b[i]>b[j])
			{
				t=b[i];b[i]=b[j];b[j]=t;
			}
		}
	}
}
void output()
{
	int i;
	for(i=0;i<n_a;i++)
		cout<<a[i]<<" ";
	for(i=0;i<n_b;i++)
	{
		cout<<b[i];
		if(i<n_b-1)
			cout<<" ";
	}
}
void main()
{
	void f2(int a[100],int b[100],int x,int y);
void f(int a[100],int x);
	int i,x,y,a[100],b[100];
	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]);
	f(a,x);f(b,y);
	f2(a,b,x,y);
	for(i=0;i<x+y;i++)
	{
		if(i!=0) printf(" ");
		printf("%d",a[i]);
	}
}
void f(int a[100],int x)
{int i,j,t;
for(i=0;i<x-1;i++)
for(j=0;j<x-1-i;j++)
if(a[j]>a[j+1])
{t=a[j];a[j]=a[j+1];a[j+1]=t;}
}
void f2(int a[100],int b[100],int x,int y)
{int i;
for(i=0;i<y;i++)
a[i+x]=b[i];
}
int a[100],b[100];
int n,m;
main()
{
void input(void);
void order1(void);
void order2(void);
void output(void);
input();
order1();
order2();
output();
}

void input(void)
{
int i;
scanf("%d %d\n",&n,&m);
for (i=1;i<=n;i++)
scanf("%d",&a[i]);
for (i=1;i<=m;i++)
scanf("%d",&b[i]);
}

void order1(void)
{
int i,j,t;
for (i=1;i<=n-1;i++)
 for (j=i+1;j<=n;j++)
  if (a[i]>=a[j])  {t=a[i];a[i]=a[j];a[j]=t;}
}

void order2(void)
{
int i,j,t;
for (i=1;i<=m-1;i++)
 for (j=i+1;j<=m;j++)
  if (b[i]>=b[j]) { t=b[i];b[i]=b[j];b[j]=t;}
}

void output(void)
{
int i;
for (i=1;i<=n;i++)
printf("%d ",a[i]);
for (i=1;i<m;i++)
printf("%d ",b[i]);
printf("%d",b[m]);
}
int first[100];
int second[100];
int combination[200];
int a,b; //??????
void cin_number()
{
	int i;
	cin >>a>>b;
	for (i=0;i<a;i++)
	{
		cin >>first[i];
	}
	for (i=0;i<b;i++)
	{
		cin >>second[i];
	}
}   //?????????????????
void rank()
{
	int i,j,temp;
	for (i=(a-1);i>0;i--)
	{
		for (j=0;j<i;j++)
		{
			if (first[j]>first[j+1])
			{
				temp=first[j];
				first[j]=first[j+1];
				first[j+1]=temp;
			}
		}
	}
	for (i=(b-1);i>0;i--)
	{
		for (j=0;j<i;j++)
		{
			if (second[j]>second[j+1])
			{
				temp=second[j];
				second[j]=second[j+1];
				second[j+1]=temp;
			}
		}
	}
}
void combine()
{
	int i;
	for (i=0;i<a;i++)
	{
		combination[i]=first[i];
	}
	for (i=0;i<b;i++)
	{
		combination[a+i]=second[i];
	}
}
void cout_combination()
{
	int i;
	for (i=0;i<(a+b-1);i++)
		cout <<combination[i]<<" ";
	cout <<combination[i]<<endl;
}
int main()
{
	cin_number();
	rank();
	combine();
	cout_combination();
	return 0;
}
int a[200],b[100];
int a1,b1;

void read()
{	int i,j;
	scanf("%d %d",&a1,&b1);
	for(i=0;i<a1;i++)
	{	scanf("%d",&a[i]);
	}
	for(j=0;j<b1;j++)
	{	scanf("%d",&b[j]);
	}
}

void ex(int *a,int *b)
{	int temp;
	temp=*a;
	*a=*b;
	*b=temp;
}
	
void bubblesort1(int *p,int m,int n)
{	int i,j;
	for(i=n;i>0;i--)
		for(j=m;j<i;j++)
			if(*(p+j)>*(p+j+1))
				ex(p+j,p+j+1);
}

void sort()
{}


void and()
{	int i;
	for(i=0;i<b1;i++)
	{	a[a1+i]=b[i];
	}
}

void prt()
{int i;
	for(i=0;i<a1+b1;i++)printf("%d%c",a[i],(i<a1+b1-1)?' ':'\n');	
}
void main()
{
	read();
	bubblesort1(a,0,a1-1);bubblesort1(b,0,b1-1);
	and();
	prt();
}
int q[100],w[100],m,n,i,j,k,v,y=0;
void a(),b(),c(),d();
main()
{
	a();
	b();
	c();
	d();
}
void a()
{
	scanf("%d%d",&m,&n);
	for(i=0;i<m;i++)
		scanf("%d",&q[i]);
	for(i=0;i<n;i++)
		scanf("%d",&w[i]);
}
void b()
{
	for(j=0;j<m-1;j++)
	{
		for(k=j+1;k<m;k++)
		{
			if(q[j]>q[k])
			{
				v=q[k];
				q[k]=q[j];
				q[j]=v;
			}
		}
	}
    for(j=0;j<n-1;j++)
	{
		for(k=j+1;k<n;k++)
		{
			if(w[j]>w[k])
			{
				v=w[k];
				w[k]=w[j];
				w[j]=v;
			}
		}
	}
}
void c()
{
	for(i=m;i<m+n;i++)
		q[i]=w[y++];
}
void d()
{
	printf("%d",q[0]);
	for(i=1;i<m+n;i++)
		printf(" %d",q[i]);
}
/*
 * ModularizedProgramming.cpp
 *
 *  Created on: 2012-11-23
 *      Author: Cui Zhaoxiong Class4 1200012931
 */
int a[200];
int b[100];
int lena = 0;//a?????
int lenb = 0;//b?????
void Input() {//??
	cin >> lena >> lenb;
	for (int i = 0; i < lena; i++) {
		cin >> a[i];
	}
	for (int i = 0; i < lenb; i++) {
		cin >> b[i];
	}
}
void Sort() {//??
	for (int i = 1; i <= lena - 1; i++) {
		for (int j = 0; j <= lena - 1 - i; j++) {
			if (a[j] > a[j + 1]) {
				int temp = a[j];
				a[j] = a[j + 1];
				a[j + 1] = temp;
			}
		}
	}
	for (int i = 1; i <= lenb - 1; i++) {
		for (int j = 0; j <= lenb - 1 - i; j++) {
			if (b[j] > b[j + 1]) {
				int temp = b[j];
				b[j] = b[j + 1];
				b[j + 1] = temp;
			}
		}
	}
}
void Catenate() {//??
	for (int i = 0; i <= lenb - 1; i++) {
		a[lena + i] = b[i];
	}
}
void Output() {//??
	cout << a[0];
	for (int i = 1; i <= lena + lenb - 1; i++) {
		cout << ' ' << a[i];
	}
}
int main() {//???
	Input();
	Sort();
	Catenate();
	Output();
	return 0;
}
void input(void);
void sort(int *a,int n,int *b,int m);
void merger(int *a,int n,int *b,int m);
void output(int *a,int n,int m);
int n,m,a[200],b[100];
void input(void)
{
	int i;
	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]);
}
void sort(int *a,int n,int *b,int m)
{
	int i,j,min,temp;
	for(i=0;i<n-1;i++)
	{
		min=i;
		for(j=i+1;j<n;j++)
			if(a[j]<a[min])
				min=j;
		if(min!=i)
		{
			temp=a[i];
			a[i]=a[min];
			a[min]=temp;
		}
	}
    for(i=0;i<m-1;i++)
	{
		min=i;
		for(j=i+1;j<m;j++)
			if(b[j]<b[min])
				min=j;
		if(min!=i)
		{
			temp=b[i];
			b[i]=b[min];
			b[min]=temp;
		}
	}
}

void merger(int *a,int n,int *b,int m)
{
	int i,j;
	for(i=n,j=0;i<n+m,j<m;i++)
		a[i]=b[j++];
}

void output(int *a,int n,int m)
{
	int i;
	for(i=0;i<n+m-1;i++)
		printf("%d ",a[i]);
	printf("%d\n",a[n+m-1]);
}
void main()
{
	input();
	sort(a,n,b,m);
	merger(a,n,b,m);
	output(a,n,m);
}
void read(int*,int*);
main()
{
      int a[100000],b[100000];
      read(a,b);
}
void read(int*a,int*b)
{
    int i,n1,n2;
    void bubble(int*,const int);
    void print1(int*,int n);
    void print2(int*,int n);
    scanf("%d %d",&n1,&n2);
    for(i=0;i<=n1-1;i++)
    scanf("%d",&a[i]);
    for(i=0;i<=n2-1;i++)
    scanf("%d",&b[i]);
    bubble(a,n1);
    bubble(b,n2);
    print1(a,n1);
    print2(b,n2);
}
void bubble(int *a,const int n)
{
     int pass,i;
     void swap(int*,int*);
     for(pass=1;pass<=n-1;pass++)
     for(i=0;i<=n-2;i++)
     if(a[i]>=a[i+1])
     swap(&a[i],&a[i+1]);
}
void swap(int *a,int *b)
{
         int hold;
         hold=*a;
         *a=*b;
         *b=hold;
}
void print1(int *a,int n)
{
     int i;
     for(i=0;i<=n-1;i++)
     {
                        printf("%d",a[i]);
                        printf(" ");
     }
}
void print2(int *a,int n)
{
     int i;
     for(i=0;i<=n-2;i++)
     {
                        printf("%d",a[i]);
                        printf(" ");
     }
     printf("%d",a[n-1]);
}
void sort(int x[])
{
  int i,j,t;
  for (i=1;i<=x[0];i++)
    for (j=1;j<=x[0]-i;j++)
      if (x[j]>x[j+1])
        {
          t=x[j];
          x[j]=x[j+1];
          x[j+1]=t;              
        }
       
}
void deal(void)
{
  int a[100]={0};
  int b[100]={0};
  int n,m,i;
  cin>>n>>m;
  a[0]=n;
  b[0]=m;
  for (i=1;i<=n;i++) cin>>a[i];
  for (i=1;i<=m;i++) cin>>b[i];     
  sort(a);
  sort(b);
  cout<<a[1];
  for (i=2;i<=n;i++) cout<<" "<<a[i];
  for (i=1;i<=m;i++) cout<<" "<<b[i];     
}
int main()
{
  
  deal();
  return 0;
}
void read(int a[],int b[]);
void sort(int a[],int b[]);
void link(int a[],int b[]);
void output(int a[]);
int input1[100],input2[100],n1,n2;
int main()
{
	read(input1,input2);
	sort(input1,input2);
	link(input1,input2);
	output(input1);
	return 0;
}
void read(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-1;i++)
       for (j=i+1;j<n1;j++)
		if (a[j]<a[i])
		{
			temp=a[j];
			a[j]=a[i];
			a[i]=temp;
		}
	for (i=0;i<n2-1;i++)
       for (j=i+1;j<n2;j++)
		if (b[j]<b[i])
		{
			temp=b[j];
			b[j]=b[i];
			b[i]=temp;
		}
}
void link(int a[],int b[])
{
	int i;
	for (i=0;i<n2;i++)
		a[n1+i]=b[i];
}
void output(int a[])
{
	int i;
	for (i=0;i<n1+n2-1;i++)
		cout <<a[i] <<" ";
	cout <<a[n1+n2-1];
}
void bubble(int a[],int l)
{
     int i,j,temp;
     for (i=1;i<l;i++)
     {
         for (j=0;j<l-i;j++)
         {
             if (a[j]>a[j+1])
             {
                   temp=a[j];
                   a[j]=a[j+1];
                   a[j+1]=temp;          
             }
         }
     }
}
void main ()
{
     int i,l1,l2,a[100],b[100];
     scanf ("%d%d",&l1,&l2);
     
         for (i=0;i<l1;i++)
         {
             scanf ("%d",&a[i]);
         }
         bubble(&a,l1);
         
         for (i=0;i<l2;i++)
         {
             scanf ("%d",&b[i]);
         }
         bubble(&b,l2);
         for (i=0;i<l1;i++)
         printf ("%d ",a[i]);
         printf ("%d",b[0]);
         for (i=1;i<l2;i++)
         printf (" %d",b[i]);
         
}
int f(int m,int n)
{
	int i,j,t,a[100],b[100],c=0;
	for(i=0;i<=m-1;i++)
		scanf("%d",&a[i]);
	for(i=0;i<=n-1;i++)
		scanf("%d",&b[i]);
	for(j=0;j<=m-2;j++)
		for(i=0;i<=m-2-j;i++)
			if(a[i]>a[i+1])
			{
				t=a[i];
				a[i]=a[i+1];
				a[i+1]=t;
			}
	for(j=0;j<=n-2;j++)
		for(i=0;i<=n-2-j;i++)
			if(b[i]>b[i+1])
			{
				t=b[i];
				b[i]=b[i+1];
				b[i+1]=t;
			}
	for(i=0;i<=m-1;i++,c++)
	{
		if(c)
			printf(" ");
		printf("%d",a[i]);
	}
	for(i=0;i<=n-1;i++)
		printf(" %d",b[i]);
	printf("\n");
	return(0);
}
int main()
{
int m,n;
scanf("%d %d",&m,&n);
f(m,n);
}
int m,n;
int a[100],b[100];
void getarr(void)
{
int i;
cin>>m>>n;
for(i=1;i<=m;i++)
  cin>>a[i];
for(i=1;i<=n;i++)
  cin>>b[i];
}
void sortarr(void)
{
int i,j,p;
for(i=1;i<m;i++)
  for(j=1;j<=m-i;j++)
     if(a[j]>a[j+1])
        {
		p=a[j];
		a[j]=a[j+1];
		a[j+1]=p;
		}
for(i=1;i<n;i++)
  for(j=1;j<=n-i;j++)
     if(b[j]>b[j+1])
        {
		p=b[j];
		b[j]=b[j+1];
		b[j+1]=p;
		}
}
void combarr(void)
{
int i;
for(i=m+1;i<=m+n;i++)
    a[i]=b[i-m];
}
void printarr(void)
{
int i;
for(i=1;i<=m+n-1;i++)
   cout<<a[i]<<" ";
cout<<a[i];
}
int main()
{
getarr();
sortarr();
combarr();
printarr();
return 0;
}
int l1,l2,a1[50],a2[50],a3[100];
void f1(int a1[],int a2[])
{
	scanf("%d %d",&l1,&l2);
	int i;
	for(i=1;i<=l1;i++) scanf("%d",&a1[i]);
	for(i=1;i<=l2;i++) scanf("%d",&a2[i]);
}
void f2(int l,int a[])
{
	int i,j,t;
	for(i=1;i<l;i++)
	{
		for(j=1;j<=l-i;j++) { if(a[j]>a[j+1]) {t=a[j]; a[j]=a[j+1]; a[j+1]=t;} }
	}
}
void f3(int a1[],int a2[],int a3[])
{
	int i;
	for(i=1;i<=l1;i++) a3[i]=a1[i];
	for(i=l1+1;i<=l1+l2;i++) a3[i]=a2[i-l1];
}
void f4(int a3[])
{
	int i;
	for(i=1;i<=l1+l2;i++) {if(i!=1) printf(" ");printf("%d",a3[i]);}
}
main()
{
	f1(a1,a2);
	f2(l1,a1);
	f2(l2,a2);
	f3(a1,a2,a3);
	f4(a3);
}
int m,n,a[20]={0},b[20]={0},c[40]={0},i,j,k;
int main()
{
    void qushu();
    void paixu();
    void hebing();
    void xianshi();
    qushu();
    paixu();
    hebing();
    xianshi();
}
void qushu()
{
     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()
{
     for(i=0;i<m-1;i++)
     for(j=0;j<m-1;j++)
     {
      if(a[j]>a[j+1])
      {
       k=a[j];
       a[j]=a[j+1];
       a[j+1]=k;
       }
      }
     for(i=0;i<n-1;i++)
     for(j=0;j<n-1;j++)
     {
      if(b[j]>b[j+1])
      {
       k=b[j];
       b[j]=b[j+1];
       b[j+1]=k;
       }
      }
}
void hebing()
{
     for(i=0;i<m;i++)
     c[i]=a[i];
     for(i=m;i<m+n;i++)
     c[i]=b[i-m];
}
void xianshi()
{
     printf("%d",c[0]);
     for(i=1;i<m+n;i++)
     printf(" %d",c[i]);
     printf("\n");
}