提交记录 15443


用户 题目 状态 得分 用时 内存 语言 代码长度
wawcac 1001. 测测你的排序 Runtime Error 0 217.572 ms 56 KB C++ 825 B
提交时间 评测时间
2020-12-28 19:15:16 2020-12-28 19:15:20
typedef unsigned int u32;

u32 *b,cnt0[256],cnt8[256],cnt16[256],cnt24[256];
	void sort(u32 *a,int n)
	{
b==new u32[n];
		for(int i=0;i<n;++i){
			++cnt0[a[i]&255];
			++cnt8[a[i]>>8&255];
			++cnt16[a[i]>>16&255];
			++cnt24[a[i]>>24&255];
		}
		for(int i=1;i<=255;++i){
			cnt0[i]+=cnt0[i-1];
			cnt8[i]+=cnt8[i-1];
			cnt16[i]+=cnt16[i-1];
			cnt24[i]+=cnt24[i-1];
		}
#define countingSort(a,b,k) {\
	int tim=n/3;\
	u32 *now=a+n-1-3;\
    while(tim--){\
        b[--cnt##k[now[3]>>k&255]]=now[3];\
        b[--cnt##k[now[2]>>k&255]]=now[2];\
        b[--cnt##k[now[1]>>k&255]]=now[1];\
		now-=3;\
    }\
    switch(n%3){\
        case 2:b[--cnt##k[a[1]>>k&255]]=a[1];\
        case 1:b[--cnt##k[a[0]>>k&255]]=a[0];\
    }\
}
		countingSort(a,b,0);
		countingSort(b,a,8);
		countingSort(a,b,16);
		countingSort(b,a,24);

	}

CompilationN/AN/ACompile OKScore: N/A

Testcase #1217.572 ms56 KBRuntime ErrorScore: 0


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