Cod sursa(job #1467334)

Utilizator FlorinHajaFlorin Gabriel Haja FlorinHaja Data 3 august 2015 11:55:55
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>

using namespace std;

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

int n, i, j;
int a[500001];

void qsort(int ic, int sf)
{
    i = ic, j = sf;
    int aux, x = a[(i+j)/2];
    do
    {
        while (j > ic && a[j] > x) j--;
        while (i < sf && a[i] < x) i++;
        if (i <= j)
            aux = a[i], a[i] = a[j], a[j] = aux, i++, j--;
    }while (i <= j);
    if (j > ic) qsort(ic, j);
    if (i < sf) qsort(i, sf);
}

int main()
{
    f >> n;
    for (i = 1; i <= n; i++)
        f >> a[i];
    qsort(1, n);
    for (i = 1; i <= n; i++)
        g << a[i] << " ";
    return 0;
}