Pagini recente » Cod sursa (job #2174730) | Cod sursa (job #1291365) | Cod sursa (job #859144) | Cod sursa (job #2462153) | Cod sursa (job #1115880)
#include <fstream>
using namespace std;
int n,a,b,c,i,v[5000005],Max,p,k,nn,vv[5000005],fr[12];
int main() {
ifstream f("algsort.in");
ofstream g("algsort.out");
f>>n;
f>>v[1];
Max=v[1];
for(i=2;i<=n;i++){
f>>v[i];
if(Max<v[i])
Max=v[i];
}
while(Max) {
nn++;
Max/=10;
}
p=1;
for(k=1;k<=nn;k++) {
p*=10;
for(i=0;i<=9;i++)
fr[i]=0;
for(i=n;i>=1;i--)
fr[(v[i]%p)/(p/10)]++;
for(i=1;i<=9;i++)
fr[i]+=fr[i-1];
for(i=n;i>=1;i--){
vv[fr[(v[i]%p)/(p/10)]]=v[i];
fr[(v[i]%p)/(p/10)]--;
}
for(i=1;i<=n;i++)
v[i]=vv[i];
}
for(i=1;i<=n;i++)
g<<v[i]<<' ';
return 0;
}