CSP-S 2025 游记

· · 生活·游记

Day (-\infty,-2]

期待我的考场在哪,南航的考场比较宽敞,nfls 考场挤得一批,所以我希望在南航,但期待无果。

开始上 \text{CF duel} 练习 1A。

又打了最后一场模拟赛(但是 NOIP 模拟赛),打完 100+50+50+0 直接开摆。结果 T1 没有处理负数取模,挂到了 45{\text{pts}}

Day -1

在 vj 上打板子,唯一有用的是最小生成树板子。

Day 0

板子没打完懒得打了,直接开摆,打 \text{CF duel}

发现我最近不能稳定切出绿题,心里没底,晚上又做了一道绿的真题。

Day 1

上午在水群 & 打听了 J 组的消息,听说很简单,竟然有人说是橙橙黄黄?!

听到 J 组简单,我以为这个图应验了:(图找不到了,就是西西欸夫的公开讨论会,说 J 组难度 1,2,2/3,3/4,S 组难度 2, 3/4, 4/5, 5)。

我认为 S 组应该是橙-黄/绿-蓝-蓝这样的,目标是 250 分,带着这样的难度刻板印象进了考场。

到了考场先写了一个 read() 快读模板,本来还想写个线段树,但怕用不上,遂未写。由于我没有仔细阅读 README 文件,导致我没有把选手目录建在桌面上,差点爆零,还好监考老师提醒了。

发密码了,文件名叫 day1.pdf。真有 Day 2 吗?其实是 explain 这个隐藏关卡。

浏览一遍题发现好像只有 T1 能做,读完题随便想了一个贪心思路,发现最多有一组的人数 >\dfrac{n}{2},证明完之后就开始写了,大概写了 15 分钟,过了大样例。

T2 看了一眼发现是 2^k 枚举子集,跑最小生成树。然后……就不会了,算了一下,加上特殊性质能拿 72 \text{pts} 直接开写了。当时我认为我的复杂度是:\mathcal O(2^k(m+nk)) ,其实不是,赛后发现还有个并查集的 \log,并且我没加按秩合并。肯定要挂分了。

T3 看着像哈希,想了一个假的方法(如果真是这个方法的话这题就是绿了)就开始往上写。双模哈希码量大,过去了 45 分钟,写了一大半之后发现这是不对的。

于是我开始慌了:200\text{pts} 都拿不到就要退役了……

想了半天的特殊性质怎么做,在特殊性质 A 和 B 之间来回横跳,结果一个都不会。赶紧看了 T4,发现只会枚举排列爆搜。不管了,能拿一点是一点。T3 写了个 \mathcal O(nq) 暴力加特殊性质,预期得分 [0,30],由于没有大样例给我测特殊性质,我也没时间对拍,所以只能这样放着了。又写了 T4 的 \text{8pts} 暴力,最终预期是 100+[72,100]+[0,30]+8=[180,238]

回去拍了 T1,我不会写全自动的,只能手动对拍,拍了几组小数据就没管了;检查 T2 代码,发现特殊性质判错了,应该是存在 a_{j,i}=0,我判的是任意 a_{j,i}=0,就这样挽回了 >\text{20pts};最后检查 T3 代码,发现有一个区间长度写错了,应该是 n-r,写成了 r,又挽救了 \text{5pts}。然后,就没有然后了,已经结束了。

回家看了洛谷难度:T1 是绿?那我 15\text{min} 秒了是什么鬼,思路错了?赶紧重写了一遍代码在 luogu 上交了一发:过了。那没事了。

Day [2,\infty)

复习 whk,但是一直在想我的 T2 能不能过,突然想到我的并查集没算入复杂度,而且没有按秩合并,复杂度直接多了一个 \bf{\log},时复 \mathcal O(2^k(m+nk) \log (n+k))

所以我的 T2 应该是 < 60 \text{pts} 了……

西西欸夫开放了申诉通道,可以查成绩了:100+80+30+8=218。怎么 T2 反向挂分了??还有我 explain 怎么爆零了?

拿到公示代码,T2 洛谷直接过了,最慢 1.05\text{s}。本地测了一下,1.46\text{s},加上按秩合并之后就是 0.9\text{s} 了。我这个非正解都能跑这么快!

这个分 7 级勾应该问题不大(?)毕竟去年 7 级勾线是 220\text{pts}