Cod sursa(job #1020003)

Utilizator MarghescuGabriel Marghescu Marghescu Data 1 noiembrie 2013 14:59:39
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.79 kb
#include<fstream>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int i,v[500001],l,r,n;
void quicksort(int v[],int l,int r)
{
    int i=l, j=r;
    int aux;
    int pv=v[(l+r)/2]; 
     
    while (i<=j)
    {   
        while (v[i]<pv)
            i++;
        while (v[j]>pv)
            j--;
        if (i<=j) 
        {
            aux=v[i];
            v[i]=v[j];
            v[j]=aux;
            i++;
            j--;
        }
    }
    if (l<j)
        quicksort(v,l,j);
    if (i<r)
        quicksort(v,i,r);
    return;
}
int main()
{
    f>>n;
    for(i=1;i<=n;i++)
    {
        f>>v[i];
    }
    l=1;
    r=n;
    quicksort(v,l,r);
    for(i=1;i<=n;i++)
    {
        g<<v[i]<<" ";
    }
    f.close();
    g.close();
}