CSP2025游记

· · 生活·游记

前言:

弱小和无知不是生存的障碍,傲慢才是。

但这三个东西同时存在在了我的身上。

day -1

上午有点焦躁,写了一下往年的题和tarjan全家桶的板子。

然后就被叫去帮忙布置考场,放了一些无所大用的隔板,往后一仰还是可以看见隔壁屏幕。

把机房的东西该收的收,该扔的扔。还把我和我旁边的机位键盘鼠标全换了,桌子也擦干净了。

rp++。

中午就提前放学了,原意是让我们回去复习,但回家后就一直在弹琴打游戏,没有什么复习的心情。

睡前最终还是把自己的模板全部都翻了一遍,扫了一眼ACAM(伏笔)。

J

很好奇day 0去哪里了。

我们学校J组如果满分了会在光荣榜上单独放一张你的大头照,遂早起考J。

考点在自己学校,所以考前还去班上看了一眼自己的同学。本来只想在教室外面晃一圈的,但显然他们都发现了我,遂仓皇逃离。

进场。带了同学送的毛绒玩具,一杯咖啡,一包零食和面包,在入场的时候给老师解释了半天。

考试开始后慢慢悠悠的开始打缺省源,密码是上善若水加了一点数字。

A 4mins,B 6mins,C 8mins,D 10mins。

然后是测大样例,自己造corner和极限数据。

最后在9:14分的时候最后一次上传了自己的代码。

罚坐,野餐,打dino和surf,把dino冲到了5位数。

可惜没有保存下来。

中场休息

中午回教室玩了一会,但是被嫌弃了。

去麦当劳吃了顿午饭,又去星巴克坐了一会,和 Evan_Leo 与 HD0X 打了电话吐槽了J组有多简单。

他们说有难度守恒定律,S组肯定难。又说J组这么简单,最近几年CSP有难度下调的趋势,说不定S也简单呢。

不懂。

回车里睡了一会,然后去初中部考S。

S

在梦开始的地方打S。

入场,配置是两瓶水和一包百奇。

开考,密码人杰地灵再加一点数字。

T1发现如果不管限制直接贪最多一个club会超过限制,对那个club贪心的调整一下就完了

A 20min。

T2是最小生成树?

这种知识点都已经多久没考过了,有点慌张,后悔没有复习prim。

发现范围很有意思,k \le 10 基本明示了有 2^k 的一个枚举,n \le 10^4 应该是直接套内层。

然后发现可以先对原图做最小生成树,内层原来的边就会变成 O(n) 级别的。

所有的边都已经确定了,所以内层的 log 就可以在外面提前排序省掉。

然后就变成了 O(2^knk\alpha(n)),一看差不多 10^8 能过了。写了个超级快读又加了几个特判,自己造的满数据跑到了0.5s。

T2大样例没给满!!!

但是赛后发现好像自己的并查集数组只开了 10010,越界了一个数。

破防了,看能骗多少吧。

T3要求的是单次询问 O(n),导致我前半个小时想的什么枚举前缀二分后缀什么的全部死光了。

发现找到询问串第一个和最后一个不一样的地方,显然中间的就是必须匹配上的。

那么对每个替换对按照上面的操作找出中心的核心部分,相同的归到一类里。把替换部分换成一个特殊字符,问题就变成了在一个类里面找有多少个是询问串的子串。

然后就变成了ACAM板子。

但是

又纠结了半个小时有没有其他算法。

失败后开始努力从当时的惊鸿一眼中回忆起ACAM。(伏笔回收),最后拼装了一个好像是对的东西,反正它过大样例了。

最后在考试结束前一个小时过了T3的最后一个大样例。

一看,T3大样例也不给满!!!

又纠结了一会trie该开多少个点。看了一眼空间限制,直接开到1e7。这就是2GB带给我的自信。

最后差不多40min冲T4。

A性质不会,B性质不会,m=1不会,n\le18也不会。

12pts遗憾离场,破防了。

后来和 Evan_Leo , SunLegend, HD0X 开语音破防了一会,然后就开始和 SunLegend 打双豹成行和折纸小鸟对对碰。

不想默写代码去自测,不敢想会挂多少分。

后话

20+100+60+12.

达成成就单场挂分max:120pts。

我好绝望啊。