#include <bits/stdc++.h>
using namespace std;
const int N = 100000100;
int a[N], n;
void fun(int q[], int l, int r)
{
if (l >= r)
return;
int f = q[l], i = l - 1, j = r + 1;
while (i < j)
{
do
i++;
while (q[i] < f);
do
j--;
while (q[j] > f);
if (i < j)
swap(q[i], q[j]);
}
fun(q, l, j);
fun(q, j + 1, r);
}
int main()
{
cin >> n;
for (int i = 1; i <= n; i++)
cin >> a[i];
fun(a, 1, n);
for (int i = 1; i <= n; i++)
cout << a[i] << ' ';
}
虽说开了o2就能过 但是为什么会有两个超时呢