Cod sursa(job #369949)

Utilizator andreitheo87Teodorescu Andrei-Marius andreitheo87 Data 29 noiembrie 2009 20:48:01
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include<fstream>
#include<iostream>
#include<queue>
#include<string>
using  namespace std;
int v[500001];
void qsort(int li,int ls,int* v)
{
    int piv = v[(li+ls)>>1];
    int i = li , j = ls;
    while( i <= j )
    {
        while( v[i] < piv ) i++;
        while( v[j] > piv ) j--;
        if( i <= j )
        {
            swap( v[i] , v[j] );
            i++; j--;
        }
    }
    if( li < j ) qsort(li,j,v);
    if( i < ls ) qsort(i,ls,v);
}
int main()
{
    fstream in("algsort.in",ios::in);
    fstream out("algsort.out",ios::out);
    int n = 5;
    in>>n;
    for(int i=0; i<n; i++) in>>v[i];
    qsort(0,n-1,v);
    for(int i=0; i<n; i++) out<<v[i]<<" ";
    out<<endl;
	return 0;
}