Pagini recente » Cod sursa (job #3178575) | Cod sursa (job #396769) | Cod sursa (job #778816)
Cod sursa(job #778816)
# include <fstream>
# define N 500005
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int v[N + 1],t[10][N];
int main(){
int i,j,zece,Ncif,cif;
fin >> v[0];
for( i = 1 ; i <= v[0] ; ++i ) fin >> v[i];
zece = 1;
for( Ncif = 1 ; Ncif <= 10 ; ++Ncif ){
if( Ncif > 1 ) zece *= 10;
for( i = 1 ; i <= v[0] ; ++i ){
cif = ( v[i] / zece ) % 10;
t[ ++t[0][cif] ][cif] = v[i];
}
// Extrag din matrice in vector
v[0] = 0;
for( i = 0 ; i < 10 ; ++i )
if( t[0][i] ){
for( j = 1 ; j <= t[0][i] ; ++j )
v[++v[0]] = t[j][i];
t[0][i] = 0;
}
}
for( i = 1 ; i <= v[0] ; ++i ) fout << v[i] << " ";
fin.close();
fout.close();
return 0;
}