提交记录 18926
用户 |
题目 |
状态 |
得分 |
用时 |
内存 |
语言 |
代码长度 |
user1 |
1001. 测测你的排序 |
Time Limit Exceeded |
0 |
5 s |
390636 KB |
C++ |
575 B |
提交时间 |
评测时间 |
2023-01-25 01:06:27 |
2023-01-25 01:06:37 |
#include <algorithm>
template<int N>
void sortB(unsigned *a, int n) {
if (n<256) {
std::sort (a, a+n);
return;
}
int cnt[16] = {};
for (int i=0; i<n; ++i) cnt[(a[i]>>4*N)&15]++;
unsigned *begin[16], *end[16];
for (int i=0; i<16; ++i) {
begin[i] = a;
end[i] = a+=cnt[i];
}
for (int i=0; i<15; ++i) {
while (begin[i] != end[i]) {
std::swap(*begin[i], *--end[(*begin[i]>>4*N)&15]);
}
}
for (int i=0; i<16; ++i) {
sortB<N-1> (begin[i], cnt[i]);
}
}
template<>
void sortB<-1>(unsigned *a, int n) {}
void sort(unsigned *a, int n) {
sortB<7>(a, n);
}
Compilation | N/A | N/A | Compile OK | Score: N/A | 显示更多 |
Testcase #1 | 5 s | 381 MB + 492 KB | Time Limit Exceeded | Score: 0 | 显示更多 |
Judge Duck Online | 评测鸭在线
Server Time: 2025-09-16 10:31:58 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠