Cod sursa(job #3208993)

Utilizator md_kosminGlod Cosmin Stefan md_kosmin Data 1 martie 2024 17:46:43
Problema Sortare prin comparare Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.83 kb
#include<iostream>

using namespace std;

int n,v[101],g[101]={}; /// {} ??

 /// spatii intre operatori

void merge_sort(int s[], int st, int dr)

{

    if(st>=dr)

        return;

    int mij=(st+dr)/2;

    merge_sort(s,st,mij);

    merge_sort(s,mij+1,dr);

    int i=st;

    int j=mij+1;

    int k=0;

    while(i<=mij && j<=dr)

    {

        if(v[i]<v[j])

            g[++k]=v[i],i++;

        else

            g[++k]=v[j],j++;

    }

    while(i<=mij)

        g[++k]=v[i],i++;

    while(j<=dr)

        g[++k]=v[j],j++;

    for(i=st,j=1;i<=dr;i++,j++)

        s[i]=g[j];

}

int main()

{

    int i;

    cin>>n;

    for(i=1;i<=n;i++)

        cin>>v[i];

    merge_sort(v,1,n);

    for(i=1;i<=n;i++)

        cout<<v[i]<<" ";

    return 0;

}