Pagini recente » Cod sursa (job #1572252) | Cod sursa (job #2906936) | Cod sursa (job #1913090) | Cod sursa (job #2046603) | Cod sursa (job #1117213)
#include <fstream>
#define DIM 10000003
using namespace std;
int v[DIM], w[DIM], f[10];
long long t, n, maxim, i, j, a, b, c, z;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int main() {
fin>>n>>b;
v[1] = b;
maxim = b;
for (i=2;i<=n;i++) {
//v[i] = (int)((1LL*a*v[i-1] + b) % c);
fin>>v[i];
if (v[i] > maxim)
maxim = v[i];
}
t = 0;
while (maxim) {
t++;
maxim/=10;
}
long long z = 1;
for (i=1;i<=t;i++) {
for (j=0;j<=9;j++)
f[j] = 0;
for (j=1;j<=n;j++)
f[ v[j]/z%10 ] ++;
for (j=1;j<=9;j++)
f[j] += f[j-1];
for (j=n;j>=1;j--) {
w[ f[ v[j]/z%10 ] ] = v[j];
f[ v[j]/z%10 ] --;
}
for (j=1;j<=n;j++)
v[j] = w[j];
z*=10;
}
for(i=1;i<=n;i++)
fout<<v[i]<<" ";
return 0;
}