Cod sursa(job #1033558)

Utilizator radulescu.serbanRadulescu Serban radulescu.serban Data 17 noiembrie 2013 10:44:06
Problema Statistici de ordine Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.84 kb
#include <fstream>

using namespace std;

ifstream in("sdo.in");
ofstream out("sdo.out");

int a[3000000],n;

void quicksort(int st, int dr)
{
      int i = st, j = dr;
      int aux;
      int p = a[(st+dr) / 2];
      while(i <= j)
      {
            while(a[i] < p)
                i++;
            while(a[j] > p)
                j--;
            if(i <= j)
            {
                  aux = a[i];
                  a[i] = a[j];
                  a[j] = aux;
                  i++;
                  j--;

            }
      }
      if(st < j)
            quicksort(st, j);
      if(i < dr)
            quicksort(i, dr);
}

int main()
{
    int i;
    in >> n;
    for(i = 1 ; i <= n ; i++)
        in >> a[i];
    quicksort(1,n);
    for(i = 1 ; i <= n ; i++)
        out << a[i] << " ";
    return 0;
}