Cod sursa(job #1499294)

Utilizator Julian.FMI Caluian Iulian Julian. Data 10 octombrie 2015 14:28:45
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>
#define nmax 500009

using namespace std;
int n,a[nmax];
ifstream fin("algsort.in");
ofstream fout("algsort.out");

void sortare(int st,int dr)
{
int i=st,j=dr,x=a[(i+j)/2];
do
    {while(a[j]>x)j--;
     while(a[i]<x)i++;

    if(i<=j)
    {swap(a[i],a[j]);
    i++;j--;}

    }while(i<=j);

    if(j>st)sortare(st,j);
    if(i<dr)sortare(i,dr);
}


int main()
{int i;
    fin>>n;
    for(i=1;i<=n;i++)
        fin>>a[i];
    sortare(1,n);
   for(i=1;i<=n;i++)
        fout<<a[i]<<' ';

}