#include
#include
#include
using namespace std;
int Partition(int *a , int s , int e){
int i=s-1;
int pivot_elt=s+rand()%(e-s+1);
std::swap(a[pivot_elt],a[e]);
for(int j=s ; j<e ; j++){
if(a[j]<=a[e]){
i++;
std::swap(a[i],a[j]);
}
}
std::swap(a[i+1],a[e]);
return i+1;
}
void quick_sort(int *a,int s,int e){
if(s>=e){
return;
}
int indx=Partition(a,s,e);
quick_sort(a,s,indx-1);
quick_sort(a,indx+1,e);
}
int main(){
int n;
srand(time(0));
int a[100];
cin>>n;
for(int i=0 ; i<n ; i++){
cin>>a[i];
}
quick_sort(a,0,n-1);
for(int i=0 ; i<n ; i++){
cout<<a[i]<<" ";
}
return 0;
}