Cod sursa(job #932624)

Utilizator a.raduAndrei Radu a.radu Data 29 martie 2013 07:57:53
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <cstdio>

using namespace std;
long a[500001],n,i;
void qsort(long l,long r)
{
long ii,jj,x,y;
ii=l;jj=r;x=a[(l+r)/2];
do{
while(a[ii]<x){ii++;}
while(a[jj]>x){jj--;}
if(ii<=jj){
        y=a[ii];a[ii]=a[jj];a[jj]=y;
ii++;jj--;
        }
  }while(ii<=jj);
  if(l<jj){qsort(l,jj);}
  if(ii<r){qsort(ii,r);}
}
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]);
qsort(1,n);
for (i=1; i<=n; i++)
    printf("%ld ",a[i]);
return 0;
}