1 #include <iostream>
2 #include <vector>
3 #include <algorithm>
4 #include <string>
5 #include <cstdio>
6 using namespace std;
7 int a[100010];
8 /*
9 void quick_sort(int *a,int left,int right){
10 if(left>=right)return;
11 int i = left;
12 int j = right;
13 int key = a[left];
14 while(i<j){
15 while(i<j&&a[j]>=key)j--;
16 a[i] = a[j];
17 while(i<j&&a[i]<=key)i++;
18 a[j] = a[i];
19 }
20 a[i] = key;
21 quick_sort(a,left,i-1);
22 quick_sort(a,i+1,right);
23 }
24 */
25 void quick_sort(int *a,int l,int r){
26 if(l>=r)return;
27 int i = l, j = r, key = a[l];
28 while(i<j){
29 while(i<j&&a[j]>=key)j--;
30 a[i] = a[j];
31 while(i<j&&a[i]<=key)i++;
32 a[j] = a[i];
33 }
34 a[i] = key;
35 quick_sort(a,l,i-1);
36 quick_sort(a,i+1,r);
37 }
38 int main()
39 {
40 int n;
41 scanf("%d",&n);
42 for(int i = 0; i < n; i++)scanf("%d",&a[i]);
43 quick_sort(a,0,n-1);
44 for(int i = 0; i < n; i++)
45 printf("%d ",a[i]);
46 return 0;
47 }