Pagini recente » Cod sursa (job #2955582) | Cod sursa (job #1386167) | Cod sursa (job #1361915) | Cod sursa (job #540239) | Cod sursa (job #641479)
Cod sursa(job #641479)
#include <fstream>
using namespace std;
ifstream in("algsort.in");
ofstream out("algsort.out");
const int N=500001;
const int P=46691;
short int cont[100000],poz[100000];
int v[N],final[N],n;
void insert(int x){
int hash,pozitie;
hash=(v[x]/P);
poz[hash]++;
pozitie=poz[hash];
final[poz[hash]]=v[x];
while(final[pozitie]<final[pozitie-1]){
swap(final[pozitie],final[pozitie-1]);
pozitie--;
}
}
int main(){
int i;
in>>n;
for(i=1;i<=n;++i){
in>>v[i];
cont[(v[i]/P)]++;
}
for(i=1;i<100000;++i){
poz[i]=cont[i-1]+poz[i-1];
}
for(i=1;i<=n;++i){
insert(i);
}
for(i=1;i<=n;++i){
out<<final[i]<<" ";
}
return 0;
}