#include <stdio.h>
#include <stdlib.h>
int*mr(int*arr1,int n,int*arr2,int m){
    int*ma=(int*)malloc((n+m)*sizeof(int));
    int i=0,j=0,k=0;
    while(i<n && j<m){
        if(arr[i]<arr[j]){
            ma[k++]=arr1[i++];
        }else{
            ma[k++]=arr2[j++];
        }
    }
    while(i<n){
        ma[k++]=arr1[i++];
    }
    while(j<m){
        ma[k++]=arr2[j++];
    }
    return ma;
}
void pa(int*arr,int size){
    for(int i=0;i<size;i++){
        printf("%d",arr[i]);
    }
    printf("\n");
}
int main(){
    int n,m;
    scanf("%d",&n);
    if(n<=0){
        printf("Invalid input\n");
        return 0;
    }
    int*arr1=(int*)malloc(n*sizeof(int));
    for(int i=0;i<n;i++){
        scanf("%d",&arr[i]);
        free(arr1);
        return 0;
    }
    int*ma=mr(arr1,n,arr2,m);
    printarray(ma,n+m);
    free(arr1);
    free(arr2);
    free(ma);
    return 0;
}