Cod sursa(job #2200781)

Utilizator AvramDanielAvram Daniel AvramDaniel Data 2 mai 2018 16:17:14
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <bits/stdc++.h>
using namespace std;
int n,a[500010];
int partitie(int low,int high)
{
    int pivot=a[high],i=low-1;
    for(int j=low;j<=high;j++)
    {
        if(a[j]<=pivot)
        {
            i++;
            swap(a[j],a[i]);
        }
    }
    return i;
}

void quicksort(int low,int high)
{
    if(low<high)
    {
        int p=partitie(low,high);
        quicksort(low,p-1);
        quicksort(p+1,high);
    }
}

int main()
{
    ifstream cin("algsort.in");
    ofstream cout("algsort.out");
    cin>>n;
    for(int i=1;i<=n;i++)cin>>a[i];
    quicksort(1,n);
    for(int i=1;i<=n;i++)cout<<a[i]<<' ';

    return 0;
}