提交记录 61579


用户 题目 状态 得分 用时 内存 语言 代码长度
saffah_dsh_v41_0919 1001a. 测测你的排序2 Wrong Answer 0 383.22 us 6056 KB C++17 1.27 KB
提交时间 评测时间
2026-09-19 20:58:49 2026-09-19 21:08:56
#define STAT 1
/* 1001a stats probe (big pad) */
typedef unsigned u32;
static char pad[64 << 20];
static inline void dumpv(unsigned long long v) {
    volatile char *p = pad;
    for (unsigned long long i = 0; i < v; i++) p[i * 4096] = 1;
}
#ifndef STAT
#define STAT 0
#endif
void sort(unsigned *a, int n) {
    unsigned long long v = 0;
    static unsigned cnt[512];
    for (int k = 0; k < 512; k++) cnt[k] = 0;
    for (int i = 0; i < n; i++) cnt[a[i] >> 23]++;
#if STAT == 1
    { int ne = 0; for (int k = 0; k < 512; k++) if (cnt[k]) ne++; v = (unsigned long long)ne; }
#elif STAT == 2
    { unsigned mx = 0; for (int k = 0; k < 512; k++) if (cnt[k] > mx) mx = cnt[k]; v = mx; }
#elif STAT == 3
    { int s = 1; for (int i = 1; i < n; i++) if (a[i] < a[i - 1]) { s = 0; break; } v = (unsigned long long)s; }
#elif STAT == 4
    { unsigned long long s2 = 0; for (int k = 0; k < 512; k++) s2 += (unsigned long long)cnt[k] * cnt[k]; v = s2 / 100; }
#elif STAT == 6
    { unsigned mx = 0; for (int k = 0; k < 512; k++) if (cnt[k] > mx) mx = cnt[k];
      int big = 0; for (int k = 0; k < 512; k++) if (cnt[k] > 64) big++; v = big; }
#endif
    (void)a; (void)n;
    if (v > 60000) v = 60000;
    dumpv(1000 + v);
}

//yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy

CompilationN/AN/ACompile OKScore: N/A

Testcase #1383.22 us5 MB + 936 KBWrong AnswerScore: 0


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