提交记录 18942


用户 题目 状态 得分 用时 内存 语言 代码长度
wys 1001b. 测测你的排序3 Accepted 100 35.51 s 1048588 KB C++ 805 B
提交时间 评测时间
2023-01-31 23:24:12 2023-01-31 23:57:38
#include <string.h>

void sort(unsigned *a, int n){
	unsigned b[n];
	unsigned cnt1[256], cnt2[256], cnt3[256], cnt4[256];
	memset(cnt1, 0, sizeof(cnt1));
	memset(cnt2, 0, sizeof(cnt2));
	memset(cnt3, 0, sizeof(cnt3));
	memset(cnt4, 0, sizeof(cnt4));
	
	for (int i = 0; i < n; i++) {
		cnt1[a[i] & 255]++;
		cnt2[(a[i] >> 8) & 255]++;
		cnt3[(a[i] >> 16) & 255]++;
		cnt4[a[i] >> 24]++;
	}
	
	for (int i = 1; i < 256; i++) {
		cnt1[i] += cnt1[i - 1];
		cnt2[i] += cnt2[i - 1];
		cnt3[i] += cnt3[i - 1];
		cnt4[i] += cnt4[i - 1];
	}
	
	for (int i = n - 1; i >= 0; i--) b[--cnt1[a[i] & 255]] = a[i];
	for (int i = n - 1; i >= 0; i--) a[--cnt2[(b[i] >> 8) & 255]] = b[i];
	for (int i = n - 1; i >= 0; i--) b[--cnt3[(a[i] >> 16) & 255]] = a[i];
	for (int i = n - 1; i >= 0; i--) a[--cnt4[b[i] >> 24]] = b[i];
}

CompilationN/AN/ACompile OKScore: N/A

Testcase #135.51 s1024 MB + 12 KBAcceptedScore: 100


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