Pagini recente » Cod sursa (job #289821) | Cod sursa (job #115777) | Cod sursa (job #116363) | Cod sursa (job #1842096) | Cod sursa (job #809472)
Cod sursa(job #809472)
#include <cstdio>
#include <algorithm>
using namespace std;
int freq[11];
int main (){
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
int p=10,n,f[105],v[105],maxi=0,i,j,e;
scanf("%d",&n);
for(i=1;i<=n;++i){
scanf("%d",&f[i]);
if(f[i]>maxi){
maxi=f[i];
}
}
for(p=1;maxi>0;maxi/=10,p*=10){
for(i=1;i<=n;++i){
++freq[(f[i]/p)%10];
}
for(i=0,e=0;i<=9;++i){
if(freq[i]!=0){
for(j=1;j<=n;++j){
if((i==(f[j]/p)%10)&&(freq[i]>0)){
v[++e]=f[j];
--freq[i];
}
}
}
}
for(i=1;i<=n;++i){
swap(f[i],v[i]);
}
}
for(i=1;i<=n;++i){
printf("%d ",f[i]);
}
}