Cod sursa(job #750754)

Utilizator bodyionitaIonita Bogdan Constantin bodyionita Data 23 mai 2012 09:24:17
Problema Sortare prin comparare Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <cstdio>
#include <deque>
using namespace std;
deque <int> b[20];
int a[800000],t,poz,i,j,n;
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]);
	t=1;
	while (b[0].size()!=n)
	{
	    for (i=0;i<=10;i++) b[i].clear();
		for (i=1;i<=n;i++)
			b[a[i]/t%10].push_back(a[i]);
		poz=0;
		for (i=0;i<=9;i++)
			for (j=0;j < b[i].size();j++)
				a[++poz]=b[i][j];
		t*=10;
	}
	for (i=1;i<=n;i++) printf("%d ",a[i]);
    return 0;
}