Pagini recente » Cod sursa (job #2824827) | Cod sursa (job #1745875) | Cod sursa (job #2447197) | Cod sursa (job #2342314) | Cod sursa (job #743178)
Cod sursa(job #743178)
#include <iostream>
#include <fstream>
#include <vector>
#include <cstring>
#define DN 500005
using namespace std;
int n,v[DN],vnou[DN],cnt[12];
int main()
{
ifstream f("algsort.in");
ofstream g("algsort.out");
f>>n;
for(int i=1; i<=n; ++i)
f>>v[i];
for(int pc=1,pz=1; pc<12; ++pc,pz*=10) {
for(int j=0; j<=10; ++j) cnt[j]=0;
for(int i=1; i<=n; ++i) {
int cc=(v[i]/pz)%10;
++cnt[cc+1];
}
for(int j=1; j<=11; ++j) cnt[j]+=cnt[j-1];
for(int i=1; i<=n; ++i) {
int cc=(v[i]/pz)%10;
//cerr<<cc<<' ';
++cnt[cc];
vnou[cnt[cc]]=v[i];
}
//memcpy(v,vnou,(n+1)*sizeof(int));
for(int i=1; i<=n; ++i) v[i]=vnou[i];
}
for(int i=1; i<=n; ++i) g<<v[i]<<' ';
return 0;
}