#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int n, i_, k;
int arr[1000001];
void swap(int *a, int *b){
int t = *a;
*a = *b;
*b = t;
}
void quick_sort(int begin, int end){
if (begin > end)
return;
int mid = arr[begin];
int i = begin;
int j = end;
while (i != j){
while (arr[j] >= mid && i < j)
j--;
while (arr[i] <= mid && i < j)
i++;
if (j > i){
swap(&arr[i], &arr[j]);
}
}
arr[begin] = arr[i];
arr[i] = mid;
quick_sort(begin, i - 1);
quick_sort(i + 1, end);
}
int main()
{
scanf("%d", &n);
for (i_ = 0; i_ < n; i_++){
scanf("%d", &arr[i_]);
}
quick_sort(0, n - 1);
for (k = 0; k < n-1; k++)
printf("%d ", arr[k]);
printf("%d", arr[n - 1]);
return 0;
}