#include<bits/stdc++.h>
using namespace std;
const int N=3e5+5;
int n,a[N];
void qsort(int l, int r){
if (l>=r) return;
int i=l,j=r,tmp=rand()%(r-l+1)+l;
swap(a[l],a[tmp]);
int val=a[l];
while (i<j){
while (i<j && a[j]>val) j--;
if (i<j) a[i++]=a[j]; else break;
while (i<j && a[i]<val) i++;
if (i<j) a[j--]=a[i]; else break;
}
a[i]=val;
qsort(l,i-1);
qsort(i+1,r);
}
int main(){
srand(time(0));
scanf("%d",&n);
for (int i=1; i<=n; i++) scanf("%d",&a[i]);
qsort(1,n);
for (int i=1; i<=n; i++) printf("%d ",a[i]);
return 0;
}