Pagini recente » Cod sursa (job #1941320) | Cod sursa (job #2906847) | Cod sursa (job #536784) | Cod sursa (job #1118541) | Cod sursa (job #2289927)
#include<fstream>
#include<vector>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
long n, a[500001];
vector<long> v[10];
int main()
{
f>>n;
for(int i = 0 ; i < n ; i++)
f>>a[i];
long ok = 1, p = 1, cifra;
while(ok){
ok = 0;
for(int i = 0 ; i < 10 ; i++)
v[i].clear();
for(int i = 0 ; i < n ; i++){
cifra = a[i] / p % 10;
v[cifra].push_back(a[i]);
if(cifra)
ok = 1;
}
int k = 0;
for(int i = 0 ; i < 10 ; i++)
for(int j = 0 ; j < v[i].size() ; j++){
a[k++] = v[i][j];
}
p *= 10;
}
for(int i = 0 ; i < n ; i++)
g<<a[i]<<" ";
return 0;
}