Pagini recente » Cod sursa (job #1622781) | Cod sursa (job #2207018) | Cod sursa (job #1257738) | Cod sursa (job #2264702) | Cod sursa (job #2067102)
# include <bits/stdc++.h>
# define nmax 500001
using namespace std;
int i,N, a[nmax];
void quick(int st, int dr)
{
int i=st,j=dr,p=a[(st+dr)/2],aux;
if (dr<=st) return;
while (i<=j){
while (a[i]<p) i++;
while (p<a[j]) j--;
if (i<=j) {
aux=a[i];a[i]=a[j]; a[j]=aux;
i++; j--;
}
}
if (st<j) quick(st,j);
if (i<dr) quick(i,dr);
}
int main()
{
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&N);
for (i=1;i<=N;i++)
scanf("%d ",&a[i]);
quick(1,N);
for (i=1;i<=N;i++)
printf("%d ",a[i]);
return 0;
}