1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
| #include <bits/stdc++.h>
using namespace std;
using i64 = long long ;
void Quick_Sort(i64 *arr, i64 begin, i64 end) {
if(begin >= end) return;
i64 tmp = arr[(begin + end) / 2];
i64 l = begin - 1, r = end + 1;
while (l < r) {
do(l++); while (arr[l] < tmp);
do(r--); while (arr[r] > tmp);
if (l < r) swap(arr[l], arr[r]);
}
Quick_Sort(arr, begin, r);
Quick_Sort(arr, r + 1, end);
}
void solve() {
i64 n;
cin >> n;
vector<i64> nums(n + 1, 0);
for(int i = 1; i <= n; i++) {
cin >> nums[i];
}
Quick_Sort(nums.data(), 1, n);
// sort(nums.begin() + 1, nums.end());
for(int i = 1; i <= n; i++) {
cout << nums[i] << " \n"[i == n];
}
}
int main()
{
solve();
return 0;
}
|