Cod sursa(job #3206032)

Utilizator TeddyDinutaDinuta Eduard Stefan TeddyDinuta Data 21 februarie 2024 14:50:47
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <bits/stdc++.h>

using namespace std;
ifstream in("apm.in");
ofstream out("apm.out");
int n, a[500005];
void quick_sort(int l, int r) {
   int piv = (l + r) / 2;

   int i = l, j = r;
   while (i <= j) {
        while (a[i] < piv) i++;
        while (a[j] > piv) j--;
        if (i <= j) {
            swap(a[i], a[j]);
            i++;
            j--;
        }
   }

   if (i < r)
        quick_sort(i, r);

   if (j > l)
        quick_sort(l, j);
}
int main()
{
    in >> n;
    for (int i = 1; i <= n; i++) {
        in >> a[i];
    }

    quick_sort(1, n);
    for (int i = 1; i <= n; i++) {
        out << a[i] << " ";
    }

    return 0;
}