Cod sursa(job #3253973)

Utilizator Bianca2507Negret Bianca Bianca2507 Data 5 noiembrie 2024 17:14:16
Problema Sortare prin comparare Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <fstream>

using namespace std;
ifstream cin("algsort.in");
ofstream cout("algsort.out");

int n,v[500005];
void sorteaza(int st,int dr)
{
    if(st<dr)
    {
        int piv=v[(st+dr)/2];
        int i=st,j=dr;
        while(i<=j)
        {
            while(v[i]<piv)
                i++;
            while(piv<v[j])
                j--;
            if(i<=j)
            {
                swap(v[i],v[j]);
                i++;
                j--;
            }
        }
        sorteaza(st,i-1);
        sorteaza(i,dr);

    }
}
int main()
{
    cin>>n;
    for(int i=1; i<=n; i++)
        cin>>v[i];

    sorteaza(1,n);
    for(int i=1; i<=n; i++)
        cout<<v[i]<<" ";
    return 0;
}