Pagini recente » Cod sursa (job #2773470) | Cod sursa (job #550896) | Cod sursa (job #3179666) | Cod sursa (job #1358886) | Cod sursa (job #1320577)
#include <cstdio>
using namespace std;
unsigned long int v[500000],m[10][500000],n,z=1;
int maxl;
int main()
{
int i,j,q,k,u,x;
freopen("algsort.in", "r", stdin);
freopen("algsort.out", "w", stdout);
scanf("%u", &n);
for(i=1;i<=n;i++)
{
scanf("%u", &v[i]);
while(z<v[i])
{
z*=10;
maxl++;
}
}
z=1;
for(i=1;i<=maxl;i++)
{
for(j=0;j<10;j++)
m[j][0]=0;
for(j=1;j<=n;j++)
{
x=v[j]/z%10;
m[x][0]++;
m[x][m[x][0]] = v[j];
}
z*=10;
q=0;
for(k=0;k<10;k++)
for(u=1;u<=m[k][0];u++)
{
q++;
v[q]=m[k][u];
}
}
for(i=1;i<=n;i++)
printf("%u ", v[i]);
return 0;
}