CSP2025邮寄

· · 生活·游记

Day -\infty

忘了,反正初赛过了。

Day 0

好多学长都回去了,机房里只剩几个人。家委给我们买了老北京鸡肉卷和饮料。一整个晚上啥也没干。

Day 1

上午

7:00 左右就到考场了,被告知 8:00 才能进。遇到了很多初中同学。

8:30 密码发下来了,上善若水。

T1 字符串+简单贪心,秒了。

T2 排序+模拟,秒了。

T3 前缀和+简单贪心+DP,秒了。

T4 写了一会 DP,发现错了,遂修改,最后过了。

剩下时间一直在反复检查。

好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊好无聊啊

期望 100+100+100+100=400

中午

回到宿舍发现 zzd 和 tjh 睡在一张床上???原来是 tjh 借我们宿舍睡午觉。交流发现有一车人都 AK 了。

下午

密码是人杰地灵。

T1 想了想发现是反悔贪心,先全选最大值,在把多的部门的次大值减最大值用优先队列存下来,选前面的即可。

T2 一眼最小生成树,发现 k\leq10,直接暴力枚举。发现一共有 m 条边,直接做是 O(2^km\log m),发现只要看原树最小生成树上的边即可,又用了一些神秘小优化,时间复杂度 O(2^kn\log n),要跑 1.3\text{e}8,有点悬,希望少爷机跑快一点。

T3 看错题了,以为是可以替换任意次,吓死我了。后面看样例发现是 1 次,想到 hash,只能打 O(L_2^2)。看到 2048\text{MB} 的空间,又想到 trie,想了 1 个小时发现想来想去只能想到 O(L_2^2) 的,遂去看 T4。

T4 看到 A 性质,以为答案是 n!,发现 0\leq c_i\leq n

面试官:我们的题非常简单,每个人都能过。

面试者A:我有 0 的耐心,直接走。

面试者B:A 都走了,我也走。

面试者C:AB 都走了,那我也走。

...

面试官:***

然后又回去看 T3,打了 hash 的 O(L_2^2) 暴力。

:::error[唐诗错误] 这是 hash 的计算公式:h=(h*q+(s[i]-'a'+1))%m

这是我写的:h=(h*q+(s[i]-'0'+1))%m

还有把 n 当成字符串的长度。

......(省略一堆唐诗错误)

虚空调试 1 小时。 :::

调完 T3 后只剩下 5 分钟了,花了 2 分钟打了 T4 n! 暴力,死活调不出来,痛失 8 \text{pts}。场上没看到 m=n 的部分分,再次痛失 4 \text{pts}

期望 100+[80,100]+20+0=[200,220]。看 200+ 的那么多,感觉 1= 有点悬。

后记

周日晚上发现我的 T2 并查集数组好像没开大:

这是我的部分代码:

const int N=1e4+10;
...
int f[N];
...
for(int i=1;i<=n+k;i++) f[i]=i;

在洛谷上交了没事,不知道在 CCF 的少爷机上能不能跑过,~希望 CCF 数据水一点~。

发现 T3 不保证 |t_1|=|t_2|,cjx 大佬没特判,痛失 20\text{pts}

sjh 大佬在比赛结束前 10 分钟想到了 T3 正解,%%%,但是没打出来。T1 也没想到,估分 113,祝好。

总结

这次的 CSP 好像羊了个羊,上午非常简单,下午难度飙升。

J组太水不说,S组在 T3 上浪费的时间太多,一直在想正解,导致没拿 T4 的部分分。

还有就是我太唐了,犯了一堆唐诗错误。

upd:最终成绩

J组:100+100+100+100=400,成功 AK

S组:100+80+25+0=205,挂了 20\text{pts},感觉 1= 有点悬。

CCF 拿脚造的数据吗?保证 |t_1|=|t_2|

如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?如此状态,如何NOIP?