Cod sursa(job #1645847)

Utilizator DaniellDa Vinci Daniell Data 10 martie 2016 14:02:50
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>

using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int n,c[500001],i,flag=1,aux;
void schimb(int &a,int &b){int aux=a;a=b;b=aux;}
void divizeaza (int s,int d,int &m)
{int i=s,j=d,pi=0,pj=1;
while(i<j)
{if(c[i]>c[j]){schimb(c[i],c[j]);schimb(pi,pj);}
i=i+pi;j=j-pj;}
m=i;
}
void quicksort(int s,int d)
{
    int m;if(s<d){divizeaza(s,d,m);quicksort(s,m-1);quicksort(m+1,d);}
}

int main()
{fin>>n;
for(i=1;i<=n;i++)fin>>c[i];
quicksort(1,n);
for(i=1;i<=n;i++)fout<<c[i]<<" ";

    return 0;
}