Cod sursa(job #332856)

Utilizator MKLOLDragos Ristache MKLOL Data 20 iulie 2009 18:50:05
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<stdio.h>
int v[10000],n,aux;
int qsort(int a,int b)
{if(a==b)
return 0;
int i=a,j=b,ii=0,jj=-1;
do
{
    if(v[i]>v[j])
 {
    aux=v[i];
    v[i]=v[j];
    v[j]=aux;
    aux=ii;
    ii=-jj;
    jj=-aux;
}
i=i+ii;
j=j+jj;
}while(i<j);

if(a<i-1)
qsort(a,i-1);
if(i+1<b)
qsort(i+1,b);
return 0;
}
int main()
{    freopen("algsort.in","r",stdin);
     freopen("algsort.out","w",stdout);
    scanf("%d",&n);
    for(int i=1;i<=n;++i)
    scanf("%d",&v[i]);
    qsort(1,n);
    for(int i=1;i<=n;++i)
    printf("%d ",v[i]);
    return 0;
}