Cod sursa(job #1583170)

Utilizator Andrew07Cosmin Alex Andrew07 Data 28 ianuarie 2016 19:09:12
Problema Sortare prin comparare Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.79 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int v[500000],n,i,k;
int schimbare(int a , int b)
{
    int x;
    x=a;
    a=b;
    b=x;
}
int stanga(int i)
{
    int j=i/2;
    while(v[i]<v[j])
    {
        swap(v[i],v[j]);
        i=j;
        j=j/2;
    }
}

int dreapta(int i)
{
    int j=i*2+1;
    if(v[j]>v[j+1]) j++;

    while(v[i]>v[j] && j<n)
    {
        swap(v[i],v[j]);
        i=j;
        j=j*2+1;
        if(v[j]>v[j+1]) j++;
    }
}

int main()
{
    fin>>n;
    fin>>v[0];
    for(i=1;i<n;i++)
    {
    fin>>v[i];
    stanga(i);
    }
    int m=n;
    for(i=1;i<=m;i++)
    {
         fout<<v[0];
        v[0]=v[n-1];
        n--;
        dreapta(0);

    }

}