#include <iostream>
using namespace std;
void merge(int *a,int low,int mid,int high){
int x=mid-low+1;
int y=high-mid;
int l[x],r[y];
for(int i=0;i<x;i++){
l[i]=a[low+i];
}
for(int i=0;i<y;i++){
r[i]=a[mid+1+i];
}
int i=0,j=0,k=low;
while(i<x && j<y){
if(l[i]<=r[j]){
a[k]=l[i];
i++;
}
else{
a[k]=r[j];
j++;
}
k++;
}
while(i<x){
a[k]=l[i];
i++;
k++;
}
while(j<y){
a[k]=r[j];
j++;
k++;
}
}
void mergesort(int *a,int low,int high){
if(low<high){
int mid=(low+high)/2;
mergesort(a,low,mid);
mergesort(a,mid+1,high);
merge(a,low,mid,high);
}
}
int main() {
int n;
cin>>n;
int a[n];
for(int i=0;i<n;i++){
cin>>a[i];
}
mergesort(a,0,n-1);
for(int i=0;i<n;i++){
cout<<a[i]<<" ";
}
return 0;
}
To embed this program on your website, copy the following code and paste it into your website's HTML: