Pagini recente » Cod sursa (job #739574) | Cod sursa (job #1016270) | Cod sursa (job #1846928) | Cod sursa (job #2288881) | Cod sursa (job #1802517)
#include <iostream>
#include <fstream>
#define dim 500002
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int rad[11][dim], v[dim];
int main()
{
long p=1, i, j, n, mx=0, k=0;
f>>n;
for(i = 1 ; i <= n ; i++)
{
f>>v[i];
if(mx < v[i]) mx= v[i];
}
while(mx){
++k;
mx/=10;
}
for(i = 1 ; i <= k ; i++){
for(j = 1 ; j <= n ; j++)
{
int x = (v[j]/p)%10;
rad[x][0]++;
int y = rad[x][0];
rad[x][y] = v[j];
}
k=0;
for(i = 0 ; i <= 9 ; i++)
for(j = 1 ; j <= rad[i][0] ; j++)
v[++k] = rad[i][j];
for(i=0 ; i <= 9 ; i++)
rad[i][0]=0;
p*=10;
}
for(i = 1 ;i <= n ;i++)
{
g << v[i] << " ";
}
}