Cod sursa(job #1061009)

Utilizator oanacroitoruOana-Maria Croitoru oanacroitoru Data 19 decembrie 2013 00:49:16
Problema Sortare prin comparare Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.84 kb
#include<iostream.h>
#include<conio.h>
#include<fstream.h>

using namespace std;

ifstream f("algsort.in");
ofstream g("algsort.out");


#define maxn 500010

int v[maxn];

int poz(int p,int u)
{int piv,aux,k;
piv=v[p];
         while(p<u)
         {         if(v[p]>v[u])
                                {aux=v[p]; v[p]=v[u]; v[u]=aux;}
                                if(v[p]==piv)
                                u--;
                                else
                                p++;
                                }
         k=p;
         return k;}

void quick(int p,int u)
{int k;
if(p<u)
{k=poz(p,u);
quick(p,k-1);
quick(k+1,u);}
}

int main ()
{int i,nr,n;
    f>>n;
    for(i=1;i<=n;i++)
    {cin>>nr;
    v[i]=nr;}
quick(1,n);

for(i=1;i<=n;i++)
g<<v[i]<<" ";
f.close();
g.close();
getche();}