Cod sursa(job #2901330)

Utilizator N.B.Lnabil. N.B.L Data 13 mai 2022 16:31:44
Problema Sortare prin comparare Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.03 kb

#include <iostream>
#include <fstream>

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

using namespace std;


const int N = 1e6;

int arr[N];

void mergeSort(int st, int ed);
//
//int main() {
//    int n;
//    cin >> n;
//    for (int i = 0; i < n; ++i)
//        cin >> arr[i];
//
//    mergeSort(0, n );
//    for (int i = 0; i < n; ++i)
//        cout << arr[i] << " ";
//    return 0;
//}

int main() {
    int n;
    in >> n;
    for (int i = 0; i < n; ++i)
        in >> arr[i];

    mergeSort(0, n );
    for (int i = 0; i < n; ++i)
        out << arr[i] << " ";
    return 0;
}

//    3 2 12 22
//    3 2 - 12 22
//    3 - 2 - 12 - 22

//    0 - 1 - 2  - 3

//    2 - 3
//    12 - 22

//    4
//    22 12 3 2


void mergeSort(int st, int ed) {
    if (st == ed)
        return;
    int mid = (st + ed) / 2;
    mergeSort(st, mid);
    mergeSort(mid + 1, ed);
    for (int i = st; i < ed - 1; ++i)
        for (int j = i + 1; j < ed; ++j)
            if (arr[i] > arr[j])
                swap(arr[i], arr[j]);

}