#include <algorithm>
#include <stdlib.h>
#include <time.h>
void Quicksort(unsigned *a, int l, int r) {
if (l >= r) return;
int i = l, j = r, t = a[l + r >> 1];
while (i <= j) {
while (a[j] >= t) j--;
while (a[i] <= t) i++;
if (i <= j) std::swap(a[i++], a[j--]);
}
Quicksort(a, l, j);
Quicksort(a, i, r);
}
void sort(unsigned *a, int n) {
srand(time(0));
Quicksort(a, 0, n - 1);
}