Cod sursa(job #276158)

Utilizator zerobaratalexandra zerobarat Data 10 martie 2009 21:56:58
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream.h>
ifstream fin("algsort.in");
ofstream fout("algsort.out");

#define max 500022

int a[max];
void sortare(int ls,int ld)
{int i=ls,j=ld,aux=a[(i+j)/2],s;
do
{while(a[i]<aux)
   ++i;
  while(a[j]>aux)
   --j;

  if(i<=j)
  { s=a[i];
    a[i]=a[j];
    a[j]=s;
    ++i;
    --j;
    }
   }while(i<=j);

    if(ls<j)sortare(ls,j);
    if(i<ld)sortare(i,ld);
}

int main()
{long n,i;
fin>>n;
for(i=1;i<=n;i++)fin>>a[i];

sortare(1,n);

for(i=1;i<=n;i++)fout<<a[i]<<" ";

fin.close();
fout.close();
return 0;

}