#include <iostream> #include <algorithm> using namespace std; void f(int a[],int x,int y){ if(x>=y){ return; } int t=(x+y)/2; int p=a[t]; swap(a[t],a[y]); int i=x,j=y-1; while(i<=j){ while(a[i]<p){ i++; } while(a[j]>=p){ j--; } if(i<=j) swap(a[i],a[j]); } swap(a[i],a[y]); f(a,x,i-1); f(a,i+1,y); } int main(){ int x,a[100000]; cin>>x; for(int i=0;i<x;i++){ cin>>a[i]; } f(a,0,x-1); for(int i=0;i<x;i++){ cout<<a[i]<<" "; } }