Cod sursa(job #1315349)

Utilizator roberta9533Pavel Roberta roberta9533 Data 12 ianuarie 2015 19:09:25
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <iostream>
#include<cstdlib>
#include<fstream>

using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int n,i,j,x,p;
long v[500001];
void quick(int s,int d) {
      i=s,j=d;
      p=v[s+rand()%(d-s+1)];
      while(i<= j)
        {
            while(v[i]<p) i++;
            while(v[j]>p) j--;
            if(i<=j){x=v[i]; v[i]=v[j]; v[j]=x; i++; j--;}
      }
    if(s<j) quick(s,j);
    if(i<d) quick(i,d);
}


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