Pagini recente » Cod sursa (job #1352134) | Cod sursa (job #3225609) | Cod sursa (job #1228784) | Cod sursa (job #2680624) | Cod sursa (job #726565)
Cod sursa(job #726565)
#include <cstdio>
using namespace std;
int t,i,n,a[500002],b[500002],c[13];
bool ok,ok2;
int main()
{
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&n);
for (i=1;i<=n;i++) scanf("%d",&a[i]);
ok=true;
t=1;
while (ok)
{
for (i=-1;i<=9;i++) c[i]=0;
for (i=1;i<=n;i++) c[a[i]/t%10]++;
for (i=1;i<=9;i++) c[i]=c[i-1]+c[i];
for (i=1;i<=n;i++) b[++c[a[i]/t%10-1]]=a[i];
for (i=1;i<=n;i++) a[i]=b[i];
t=t*10;
if (c[0]==n) ok=false;
}
for (i=1;i<=n;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}