Cod sursa(job #2944619)

Utilizator Robilika2007Robert Badea Robilika2007 Data 22 noiembrie 2022 18:56:00
Problema Sortare prin comparare Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.96 kb
//bucketsort

#include <fstream>
#include <algorithm>
#include <vector>

using namespace std;

ifstream cin ("algsort.in");
ofstream cout ("algsort.out");

#define MAX_n 500000
#define nrGaleti (1 << 16)
#define MAX_a (1 << 31)
#define bitiGaleata 15

//int v[MAX_n];

vector <int> galeti[nrGaleti];

int gasesteGaleata (int a)
{
    return a >> bitiGaleata;
}

void sort(int nrGaleata)
{
    vector<int>& v = galeti[nrGaleata];

    sort( v.begin(), v.end() );
}

int main()
{
    int n, a;
    cin >> n;
    for(int i=0;i<n;++i)
    {
        cin >> a;
        galeti[ gasesteGaleata(a) ].push_back(a);
    }

    int poz = 0;
    for(int i=0;i<nrGaleti;++i)
    {
        sort(i);
        for(int j = 0; j < galeti[i].size(); ++j)
        {
            cout << galeti[i][j] << " ";
            //v[poz++] = galeti[i][j];
        }
    }

    /*
    for(int i = 0; i < poz; i++)
        cout << v[i] << " ";
    */

}