Cod sursa(job #2245015)

Utilizator dimi999Dimitriu Andrei dimi999 Data 24 septembrie 2018 16:30:22
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.74 kb
#include <bits/stdc++.h>
using namespace std;

ifstream fin("algsort.in");
ofstream fout("algsort.out");

void quicksort(int arr[],int st,int dr)
{
    int i=st,j=dr;
    int mij=(i+j)/2,pivot=arr[mij];
    while(i<=j)
    {
        while(arr[i]<pivot)
            i++;
        while(arr[j]>pivot)
            j--;
        if(i<=j)
        {
            swap(arr[i],arr[j]);
            i++;
            j--;
        }
    };
    if(st<j)
        quicksort(arr,st,j);
    if(dr>i)
        quicksort(arr,i,dr);
}


int main()
{
    int n,v[500005],i;
    fin>>n;
    for(i=1;i<=n;i++)
        fin>>v[i];
    //sort(v+1,v+n+1);
    quicksort(v,1,n);
    for(i=1;i<=n;i++)
        fout<<v[i]<<" ";
    return 0;
}