Cod sursa(job #1121409)

Utilizator bogdanpaunFMI Paun Bogdan Gabriel bogdanpaun Data 25 februarie 2014 12:46:59
Problema Sortare prin comparare Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>

using namespace std;
int N,v[100005],b[100005];

void _sort(int L,int R){
    if( L < R ){
        int m = L + (R-L) / 2;
        _sort(L,m);
        _sort(m+1,R);
        int i=L,j=m+1,k=L;
        while(  i <= m && j <= R ){
            if( v[i] < v[j] ) b[ k++ ]=v[i++];
            else b[k++]=v[j++];}
        while(i <= m) b[k++] = v[i++];
		while(j <= R) b[k++] = v[j++];
		for(i = L; i <= R; i++) v[i] = b[i];
    }
}
int main()
{
    ifstream f("algsort.in");
    ofstream g("algsort.out");
    f>>N;
    for( register int i=0; i<=N-1; ++i )
        f>>v[i];
    _sort(0,N-1);
    for(int i = 0; i <= N-1; i++) g<<v[i]<<" ";
    return 0;
}