提交时间:2024-03-02 17:05:17

运行 ID: 134705

#include<cstdio> #include<iostream> using namespace std; int n,a[1000001]; void quick(int i,int j){ int m,n,temp,k; m=i;n=j; k=a[(i+j)>>1]; while(m<=n){ while(a[m]<k&&m<j)m++; while(a[n]>k&&n>1)n--; if(m<n){ swap(a[m],a[n]); m++;n--; } } if(m<j)quick(m,j); if(n>i)quick(i,n); } int main(){ cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; quick(1,n); for(int i=1;i<=n;i++)cout<<a[i]<<" "; return 0; }