基数排序模板[luogu 1177]

时间:2023-12-15 15:27:50
 #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]);
     ;
 }