Cod sursa(job #2868679)

Utilizator loghin_antoniaLoghin Antonia loghin_antonia Data 11 martie 2022 09:11:57
Problema Sortare prin comparare Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include <bits/stdc++.h>
using namespace std;
void QS(int a[], int st, int dr)
{
    if(st>=dr) return;
    int mij=(st+dr)/2;
    swap(a[st],a[mij]);
    int i=st,j=dr;bool ok=0;
    while(i<j)
    {
        if(a[i]>a[j]) {swap(a[i],a[j]);ok=1-ok;}
        i+=ok;
        j-=1-ok;

    }
    QS(a,st,i-1);
    QS(a,i+1,dr);
}
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int main()
{
    int n;
    int a[500005];
    fin>>n;
    for(int i=1;i<=n;i++) fin>>a[i];
    QS(a,1,n);
    for(int i=1;i<=n;i++) fout<<a[i]<<" ";

}