提交记录 31293


用户 题目 状态 得分 用时 内存 语言 代码长度
saffah_dsh_260814 1001a. 测测你的排序2 Compile Error 0 0 ns 0 KB C 1.74 KB
提交时间 评测时间
2026-08-14 01:20:35 2026-08-14 01:20:36
#include <string.h>
#if VARIANT == 8
void sort(u32 *a, int n) {
    u32 c1[256], c2[256], c3[256], c4[256];
    for (int i=0;i<256;i++){c1[i]=c2[i]=c3[i]=c4[i]=0;}
    int i=0;
    for (; i+3 < n; i+=4) {
        u32 x0=a[i], x1=a[i+1], x2=a[i+2], x3=a[i+3];
        c1[x0&255]++; c2[(x0>>8)&255]++; c3[(x0>>16)&255]++; c4[x0>>24]++;
        c1[x1&255]++; c2[(x1>>8)&255]++; c3[(x1>>16)&255]++; c4[x1>>24]++;
        c1[x2&255]++; c2[(x2>>8)&255]++; c3[(x2>>16)&255]++; c4[x2>>24]++;
        c1[x3&255]++; c2[(x3>>8)&255]++; c3[(x3>>16)&255]++; c4[x3>>24]++;
    }
    for (; i < n; i++) {
        u32 x=a[i];
        c1[x&255]++; c2[(x>>8)&255]++; c3[(x>>16)&255]++; c4[x>>24]++;
    }
    for (int i=1;i<256;i++){c1[i]+=c1[i-1];c2[i]+=c2[i-1];c3[i]+=c3[i-1];c4[i]+=c4[i-1];}
    i=n-1;
    for (; i>=3; i-=4) {
        u32 x0=a[i],x1=a[i-1],x2=a[i-2],x3=a[i-3];
        tmp[--c1[x0&255]]=x0; tmp[--c1[x1&255]]=x1; tmp[--c1[x2&255]]=x2; tmp[--c1[x3&255]]=x3;
    }
    for (; i>=0; i--) tmp[--c1[a[i]&255]]=a[i];
    i=n-1;
    for (; i>=3; i-=4) {
        u32 x0=tmp[i],x1=tmp[i-1],x2=tmp[i-2],x3=tmp[i-3];
        a[--c2[(x0>>8)&255]]=x0; a[--c2[(x1>>8)&255]]=x1; a[--c2[(x2>>8)&255]]=x2; a[--c2[(x3>>8)&255]]=x3;
    }
    for (; i>=0; i--) a[--c2[(tmp[i]>>8)&255]]=tmp[i];
    i=n-1;
    for (; i>=3; i-=4) {
        u32 x0=a[i],x1=a[i-1],x2=a[i-2],x3=a[i-3];
        tmp[--c3[(x0>>16)&255]]=x0; tmp[--c3[(x1>>16)&255]]=x1; tmp[--c3[(x2>>16)&255]]=x2; tmp[--c3[(x3>>16)&255]]=x3;
    }
    for (; i>=0; i--) tmp[--c3[(a[i]>>16)&255]]=a[i];
    i=n-1;
    for (; i>=3; i-=4) {
        u32 x0=tmp[i],x1=tmp[i-1],x2=tmp[i-2],x3=tmp[i-3];
        a[--c4[x0>>24]]=x0; a[--c4[x1>>24]]=x1; a[--c4[x2>>24]]=x2; a[--c4[x3>>24]]=x3;
    }
    for (; i>=0; i--) a[--c4[tmp[i]>>24]]=tmp[i];
}

CompilationN/AN/ACompile ErrorScore: N/A


Judge Duck Online | 评测鸭在线
Server Time: 2026-09-12 09:25:44 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠