Pagini recente » Cod sursa (job #12113) | Cod sursa (job #2987472) | Cod sursa (job #2778630) | Cod sursa (job #1436562) | Cod sursa (job #2669402)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
void quicksort(int a[], int st, int dr) {
if(st < dr) {
int mid = (st + dr) >> 1;
swap(a[st], a[mid]);
int i = st , j = dr, d = 0;
while(i < j) {
if(a[i] > a[j]) {
swap(a[i], a[j]);
d = !d;
}
i += d;
j -= !d;
}
quicksort(a, st , i - 1);
quicksort(a, i + 1, dr);
}
}
const int NMAX = 5e5 + 5;
int N, a[NMAX];
int main() {
fin.sync_with_stdio(false);
fout.sync_with_stdio(false);
fin.tie(nullptr);
fout.tie(nullptr);
fin >> N;
for(int i = 1; i <= N; ++i)
fin >> a[i];
quicksort(a, 1, N);
for(int i = 1; i <= N; ++i)
fout << a[i] << ' ';
}