Cod sursa(job #2898354)

Utilizator Mike07Mihai-Alexandru Militaru Mike07 Data 6 mai 2022 16:51:52
Problema Sortare prin comparare Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
# include <bits/stdc++.h>
using namespace std;

int n, v[500001];

ifstream f("algsort.in");
ofstream g("algsort.out");

int partition(int v[], int l, int r){
    int pivot = v[r];
    int i=l-1;
    for(int j=l;j<r;j++){
        if(v[j]<pivot){
            i++;
            swap(v[i], v[j]);
        }
    }
    swap(v[i+1], v[r]);
    return (i+1);

}

void quicksort(int v[], int l, int r)
{
    if (l < r){
        int pivot = partition(v, l, r);
        quicksort(v, l, pivot - 1);
        quicksort(v, pivot + 1, r);
    }
}

int main(){
    f>>n;
    for(int i=0;i<n;i++){
        f>>v[i];
    }

    quicksort(v,0,n-1);
    for(int i=0;i<n;i++){
        g<<v[i]<<" ";
    }

    return 0;
}