提交记录 938


用户 题目 状态 得分 用时 内存 语言 代码长度
FoolMike 1001. 测测你的排序 Compile Error 0 0 ns 0 KB C 536 B
提交时间 评测时间
2018-06-20 17:50:00 2020-07-31 20:44:35
#include <cstring>

void sort(unsigned *a, int n) {
	const unsigned U = 1 << 16, All = U - 1;
	unsigned cnt[1 << 16];
	unsigned *b = new unsigned[n];
	memset(cnt, 0, 1 << 18);
	for (int i = 0; i < n; ++i) ++cnt[a[i] & All];
	for (int i = 1; i < All; ++i) cnt[i] += cnt[i - 1];
	for (int i = n - 1; ~i; --i) b[--cnt[a[i] & All]] = a[i];
	memset(cnt, 0, 1 << 18);
	for (int i = 0; i < n; ++i) ++cnt[b[i] >> 16];
	for (int i = 1; i < All; ++i) cnt[i] += cnt[i - 1];
	for (int i = n - 1; ~i; --i) a[--cnt[b[i] >> 16]] = b[i];
	delete[] b;
}

CompilationN/AN/ACompile ErrorScore: N/A


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