Cod sursa(job #1013823)

Utilizator CatalinaRaduCatalina Elena Radu CatalinaRadu Data 21 octombrie 2013 19:31:20
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ("algsort.in");
ofstream g ("algsort.out");
long n,v[500001];

void quicksort (long x[], long left, long right)
{
    long i=left,j=right;
    long aux;
    long pivot=x[(left+right)/2];
    while (i<=j)
    {
        while (x[i]<pivot)
            i++;
        while (x[j]>pivot)
            j--;
        if (i<=j)
        {
            aux=x[i];
            x[i]=x[j];
            x[j]=aux;
            i++;
            j--;
        }
    }
    if (left<j)
        quicksort(x,left,j);
    if (i<right)
        quicksort(x,i,right);
}


int main()
{
    f>>n;
    long i;
    for (i=1;i<=n;i++)
        f>>v[i];
    quicksort(v,1,n);
    for (i=1;i<=n;i++)
        g<<v[i]<<" ";
    f.close();g.close();
    return 0;
}