Pagini recente » Cod sursa (job #2299265) | Profil ariba021 | Cod sursa (job #3264898) | Cod sursa (job #694298) | Cod sursa (job #2065703)
#include <fstream>
#define Nmax 500001
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int N,v[Nmax],pozitii[10],w[Nmax];
int main()
{
f>>N;
for(int i=1;i<=N;++i)
{
f>>v[i];
++pozitii[v[i]%10];
}
for(int i=1;i<=9;++i)
pozitii[i]+=pozitii[i-1];
for(int p=1;pozitii[0]<N;p*=10)
{
for(int i=N;i>=1;--i)
w[pozitii[(v[i]/p)%10]--]=v[i];
for(int i=0;i<=9;++i)
pozitii[i]=0;
for(int i=1;i<=N;++i)
{
v[i]=w[i];
++pozitii[(v[i]/p)%10];
}
}
for(int i=1;i<=N;++i)
g<<v[i]<<' ';
return 0;
}