Cod sursa(job #3125726)

Utilizator AlexTimplaruAlexandru Timplaru AlexTimplaru Data 4 mai 2023 11:22:28
Problema Sortare prin comparare Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>
#include <map>

using namespace std;

ifstream fin("algsort.in");
ofstream fout("algsort.out");

int n, v[500100];

void sortare(int st, int dr)
{
    map<int, int> m;

    for(int i = st; i < dr; i++)
    {
        m[ v[i] ] += 1;
    }
    auto it = m.begin();
    int i = st;
    while(i < dr)
    {
        while(it->second)
        {
            v[i] = it->first;
            it->second--;
            i++;
        }
        it++;
    }
}

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

    sortare(0, n);

    for(int i = 0; i < n; i++)
    {
        fout << v[i] << ' ';
    }
}