Cod sursa(job #1427976)

Utilizator andreib98Borza Andrei andreib98 Data 3 mai 2015 13:48:35
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int n,i,a[500001];
int poz(int p,int u)
{
    int pivot,aux,k;
    pivot=a[p];
    while(p<u)
    {
        if(a[p]>a[u])
        {
            aux=a[p];
            a[p]=a[u];
            a[u]=aux;
        }
        if(a[p]==pivot) u--;
        else p++;
    }
    k=p;
    return k;
};
void quicksort(int p,int u)
{
    int k;
    if(p<u)
    {
        k=poz(p,u);
        quicksort(p,k-1);
        quicksort(k+1,u);
    }
};
int main()
{
fin>>n;
for(i=1;i<=n;i++)
    fin>>a[i];
quicksort(1,n);
for(i=1;i<=n;i++)
    fout<<a[i]<<" ";
    return 0;
}