https://www.acwing.com/problem/content/787/
#include <iostream> using namespace std; const int N = 100010; int n; int a[N]; void quick_sort(int a[],int l,int r){ if(l >= r) return; swap(a[l],a[(l+r) >> 1]); int pivot = a[l]; int i = l,j = r; while(i < j){ if(a[j] >= pivot && i < j) j--; a[i] = a[j]; if(a[i] <= pivot && i < j) i++; a[j] = a[i]; } a[i] = pivot; quick_sort(a,l,i-1); quick_sort(a,i+1,r); } int main(){ cin >> n; for(int i = 1; i <= n; i++) cin >> a[i]; quick_sort(a,1,n); for(int i = 1; i <= n; i++) cout << a[i] << " "; return 0; }