Pagini recente » Cod sursa (job #2724583) | Cod sursa (job #2723144) | Cod sursa (job #42973) | Cod sursa (job #2733061) | Cod sursa (job #542149)
Cod sursa(job #542149)
# include <stdio.h>
long a[500010], n, i;
void qs (long a[], long st, long dr){
long i = st, j = dr, m = a[(st + dr) >> 1];
do {
while (a[i] < m) ++i;
while (a[j] > m) --j;
if (i <= j){
int x = a[i];
a[i] = a[j];
a[j] = x;
++i;
--j;
}
} while (i <= j);
if (st < j) qs (a, st, j);
if (i < dr) qs (a, i, dr);
}
int main (){
freopen ("algsort.in", "r", stdin);
freopen ("algsort.out", "w", stdout);
scanf ("%ld", &n);
for (i = 1; i <= n; ++i)
scanf ("%ld", &a[i]);
qs (a, 1, n);
for (i = 1; i <= n; ++i)
printf ("%ld ", a[i]);
return 0;
}