CCF CSP-S 2025 游记
Oracynx
·
·
生活·游记
CCF CSP-S 2025 游记
考场上发现 BSZX 似乎更新了键鼠,但好像比去年更加难用了。
第一题,考虑如果一个部门招了超过 \dfrac{n}{2} 人,将多余的人移动到其他部分这个过程中,肯定不可能出现另一个部门的人数也超过 \dfrac{n}{2},原因显然,半小时通过第一题。
考虑第二题,发现应该是要枚举 2^k 次方种情况的,但是如果接着带上 m 的话完全超时了。
接着就开始往贪心的方面想,经过了十多分钟未遂,决定先看第三题。
第三题发现似乎时 ACAM 板子题,只需要将 s_1, s_2 的每一位的字符作为一个对来作为权值插入 Trie 树即可。
接着把长度挂在末端上,然后对于 t1, t2 也是将每一位的字符作为一对继续在 ACAM 上跑匹配,在跑到任意一位时,从当前状态一直跳 fail 链,每一个跳到的状态中的挂的所有长度都是可以替换的方案。
判断每一个长度是否覆盖 t1, t2 是简单的,但是跳 fail 链是超时的。
发现长度是对于不小于一个数 x 的所有长度都可以,而将 fail 指针作为边,空状态节点作为根可以构建出一颗 fail 树,而对于每一个节点的每一个儿子,增加的长度的个数的和为 n,考虑使用主席树维护。
主席树维护是容易的,但是对于一个使用指针实现的 ACAM 和一个使用指针实现的主席树是难以调试的。
好在在 5:50 成功调出。
这时回去思考第二题已经是不可能的,把第三题的 8 分写了,就去写了第二题的 A 性质,期望得分 40 分。
期望总分 100 + 40 + 100 + 8 = 248 分。
感觉考得一般。
考后发现 CCF 未能保住 |t_1| \neq |t_2|,期望得分变为 100 + 40 + 0 + 8 = 148 分,更为完蛋。
接着发现第二题是水题,好的,烂完了。
以完蛋的心态过了 4 天,发现 11 月 5 日晚上爆出可以通过漏洞查分。
难绷的是,CCF 之前可以直接进成绩界面查分,今年似乎修复了,但是没有修复申诉界面查分。
发现第三题有 100 分,不难想到 CCF 似乎没有任何一组 |t_1| \neq |t_2|。
甚至有人 |t_1| \neq |t_2| 输出 \texttt{No} 都过了。
以及第二题的 Intel Ultra 9 285K,Intel 产品中目前性能最强的 CPU。
但是关闭睿频。
机房的电脑都能日常稳定 4.2\texttt{GHz},而 Intel 将这一块 CPU 削成了 3.7\texttt{GHz},削成啥了。
导致大部分人都被或多或少的卡掉了点分。
而我的 A 性质拿到了 64 分?
总分为 100 + 64 + 100 + 8,最喜欢 CCF 的一集。
甚至考场代码交在洛谷上都超时了,时限有 2 秒。
怀疑是 Intel Ultra 9 285K 的超大 L3 缓存发力了,以及还有 96\texttt{GB} 大内存的超绝内存访问连续性。
嗯。
挺好的。
可能能在退役之前保住一个 S 组一等奖。