Pagini recente » Cod sursa (job #2895546) | Cod sursa (job #1537680) | Cod sursa (job #537838) | Cod sursa (job #3150942) | Cod sursa (job #1018712)
#include <fstream>
#include <algorithm>
#include <vector>
#include <cmath>
using namespace std;
ifstream cin("algsort.in");
ofstream cout("algsort.out");
int n;
vector <int> v;
vector <int> hashs[200007];
void extract()
{
int idx = 0;
for (int i = 0; i < n; i++)
{
sort(hashs[i].begin(), hashs[i].end());
for (vector<int>::iterator it = hashs[i].begin(); it != hashs[i].end(); it++)
v[idx++] = *it;
}
}
void bucketSort ()
{
for (int i = 0; i < n; ++i)
{
int k = floor(v[i] / 3000007);
hashs[k].push_back(v[i]);
}
extract();
}
int main()
{
cin >> n;
int x;
for (int i = 0; i < n; ++i)
{
cin >> x;
v.push_back(x);
}
bucketSort();
for (int i = 0; i < n; ++i)
cout << v[i] << " ";
}