Cod sursa(job #1193346)

Utilizator bogdanmarin69Bogdan Marin bogdanmarin69 Data 31 mai 2014 14:55:53
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>
using namespace std;
#define MAX 500001
int v[MAX], n;
void qsort(int v[], int st, int dr)
{
    int i=st, j=dr, piv = v[(st+dr)/2], aux;
    while(i<j){
        while(v[i]<piv) i++;
        while(v[j]>piv) j--;
        if(i<=j){
            aux = v[i];
            v[i] = v[j];
            v[j] = aux;
            i++; j--;
        }
    }
    if(st<j) qsort(v, st, j);
    if(i<dr) qsort(v, i, dr);
}
int main()
{
    int i;
    ifstream fin("algsort.in");
    ofstream fout("algsort.out");
    fin>>n;
    for(i=1; i<=n; i++)
        fin>>v[i];
    qsort(v, 1, n);
    for(i=1; i<=n; i++)
        fout<<v[i]<<' ';
    return 0;
}