Pagini recente » Cod sursa (job #999021) | Cod sursa (job #2139285) | Cod sursa (job #1323349) | Cod sursa (job #1047790) | Cod sursa (job #1668187)
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
vector<int> buckets[10];
vector<int> data;
bool check_sorted(vector<int> data){
for(unsigned int i = 0; i < data.size() - 1; ++i)
if(data[i] > data[i+1])
return false;
return true;
}
int main()
{
freopen("algsort.in", "r", stdin);
freopen("algsort.out", "w", stdout);
int sz;
cin >> sz;
int x;
for(int i = 0; i < sz; ++i){
cin >> x;
data.push_back(x);
}
int ten = 1;
int iters = 10;
for(int k = 0; k < iters; ++k){
for(int val : data){
buckets[(val/ten)%10].push_back(val);
}
ten *= 10;
int cnt = 0;
for(int i = 0; i < 10; ++i){
for(int j = 0; j < buckets[i].size(); ++j){
data[cnt++] = buckets[i][j];
}
}
for(int i = 0; i < 10; ++i)
buckets[i].clear();
}
for(int i = 0; i < sz; ++i)
cout << data[i] << ' ';
return 0;
}