Cod sursa(job #3254523)

Utilizator answarIonascu Andrei answar Data 7 noiembrie 2024 18:56:58
Problema Sortare prin comparare Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("algsort.in");
ofstream cout("algsort.out");
int n,m,i,j;
int v[500010],w[500010];
void srt(int st,int dr) {
    if (st<dr) {
        int vi=0;
        int vj=-1;
        int i=st;
        int j=dr;
        int vt;
        while (i<j) {
            if (v[i]>v[j]) {
                swap(v[i],v[j]);
                vt=vi;
                vi=-vj;
                vj=-vt;
            }
            i+=vi;
            j+=vj;
        }
        int mid=i;
        srt(st,mid);
        srt(mid+1,dr);
    }
}
int main () {
    cin>>n;
    for (i=1;i<=n;i++) {
        cin>>v[i];
    }
    srt(1,n);
    for (i=1;i<=n;i++) {
        cout<<v[i]<<" ";
    }
}