Cod sursa(job #2238058)

Utilizator danielsociuSociu Daniel danielsociu Data 4 septembrie 2018 14:12:31
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include <fstream>
std::ifstream cin("algsort.in");
std::ofstream cout("algsort.out");
#define maxn 500050
int v[maxn],N;

void afis(int v[],int n){
    for(int i=1;i<=n;i++)
        cout<<v[i]<<' ';
}
void citire(int v[],int &n){
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>v[i];
}

void quicksort(int v[],int st, int dr){
    if(st<dr){
        int i=st, aux;
        int rad=v[dr];
        for(int j=st;j<dr;j++)
            if(v[j]<rad){
                aux=v[i];
                v[i]=v[j];
                v[j]=aux;
                i+=1;
            }
        v[dr]=v[i];
        v[i]=rad;
        quicksort(v,st,i-1);
        quicksort(v,i+1,dr);
    }
}

int main()
{
    citire(v,N);
    quicksort(v,1,N);
    afis(v,N);
}