Cod sursa(job #2277697)

Utilizator ceciliamariciucCecilia Mariciuc ceciliamariciuc Data 6 noiembrie 2018 18:58:20
Problema Sortare prin comparare Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <fstream>

using namespace std;

ifstream fin("algsort.in");
ofstream fout("algsort.out");

int n,a[500001];

int Pivotare(int s,int d)
{int i,j,mod,aux;
i=s; j=d; mod=1;
while(i<j)
  {if(a[i]>a[j])
     {aux=a[i]; a[i]=a[j]; a[j]=aux;
      mod=3-mod;
     }
   if(mod==1) j--;
   else i++;
  }
return i;
}

void QS(int s,int d)
{if(s<d)
   {int p=Pivotare(s,d);
    QS(s,p-1);
    QS(p+1,d);
   }
}

void Citire()
{int i;
fin>>n;
for(i=1;i<=n;i++) fin>>a[i];
}

int main()
{
Citire();
QS(1,n);
for(int i=1;i<=n;i++) fout<<a[i]<<" ";
    return 0;
}