Pagini recente » Cod sursa (job #724946) | Cod sursa (job #1723571) | Cod sursa (job #1837790) | Cod sursa (job #2212894) | Cod sursa (job #826749)
Cod sursa(job #826749)
#include<fstream>
#include<string.h>
#define DIM 500010
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int maxim,i,n,nr,k;
int putere=1;
int Fr[11],V[DIM],Z[DIM];
int main(){
f>>n;
for(i=1;i<=n;i++){
f>>V[i];
if(V[i]>maxim)
maxim=V[i];
}
while(maxim!=0){
nr++;
maxim/=10;
}
for(k=1;k<=nr;k++){
memset(Fr,0,sizeof(Fr));
for(i=1;i<=n;i++)
Fr[V[i]/putere%10]++;
for(i=1;i<=9;i++)
Fr[i]+=Fr[i-1];
for(i=n;i>=1;i--)
Z[Fr[V[i]/putere%10]--]=V[i];
for(i=1;i<=n;i++)
V[i]=Z[i];
putere*=10;
}
for(i=1;i<=n;i++)
g<<V[i]<<" ";
return 0;
}