Cod sursa(job #826716)

Utilizator BarracudaFMI-Alex Dobrin Barracuda Data 1 decembrie 2012 10:13:33
Problema Sortare prin comparare Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
#include<cstring>
#define dim 500100

using namespace std;


ifstream f("sort.in");
ofstream g("sort.out");


int n,i,k,pu,t;
int Sor[dim],A[dim],Fr[10];
int main () {
	
	f>>n;
	
	for(i=1;i<=n;++i)
		f>>A[i];
	
	pu=1;
	for(t=1;t<=9;++t) {
		memset(Fr,0,sizeof(Fr));
		for(i=1;i<=n;++i)
			Fr[A[i]/pu%10]++;
		for(i=1;i<=9;++i)
			Fr[i]+=Fr[i-1];
		for(i=n;i>=1;--i)
			Sor[Fr[A[i]/pu%10]--]=A[i];
		
		pu*=10;
		for(i=1;i<=n;++i)
			A[i]=Sor[i];
	}
	
	
	for(i=1;i<=n;++i)
		g<<Sor[i]<<"\n";
	
	return  0;
}