#include<bits/stdc++.h> #define LL long long using namespace std; ,bas=; ]; LL idx(LL k,LL w) {return (k/p[w])%bas;} int main() { scanf("%d",&n); ; i<n; i++) scanf("%lld",&a[i]); p[]=,p[]=p[]*bas,p[]=p[]*bas; ; w<; w++) { memset(x,,sizeof x); ; i<n; i++) x[idx(a[i],w)]++; ; i<bas; i++) x[i]+=x[i-]; ; i>=; i--) b[--x[idx(a[i],w)]]=a[i]; swap(a,b); } ; i<n; i++) printf("%lld ",a[i]); ; }
相关文章
- Luogu4725 【模板】多项式对数函数(NTT+多项式求逆)
- Luogu P4643 【模板】动态dp(矩阵乘法,线段树,树链剖分)
- 【luogu P3369 普通平衡树(Treap/SBT)】 模板 Splay
- Luogu P3919 【模板】可持久化数组 可持久化线段树
- Luogu P3919【模板】可持久化数组(可持久化线段树/平衡树)
- fhq_treap || BZOJ 3223: Tyvj 1729 文艺平衡树 || Luogu P3391 【模板】文艺平衡树(Splay)
- Luogu P1962 斐波那契数列(矩阵乘法模板)
- 【luogu P3377 左偏树(可并堆)】 模板
- Luogu4717 【模板】快速沃尔什变换(FWT)
- [模板][Luogu3387] 缩点 - Tarjan, 拓扑+DP