CSP-S 2025 游寄

· · 生活·游记

这是我踏入信息学竞赛(OI)的第二年,也很可能是我倒数第二年参赛了。在退役前,总想留下一些记录,于是便有了这篇文字。

坐标:中国香港

CSP-S1 前

回顾去年,我的 OI 比赛成绩可以说是一塌糊涂(虽然是第一年打,这个成绩算正常)。CSP-J 的 T2 爆零,T3 也只拿了 60 分。HKOI 虽然进了决赛,却没能拿到奖项。唯一拿得出手的,是城大全港中学编程挑战赛的银奖——但那场比赛整体偏水。培正喇沙编程挑战赛中,我更是因为实力不足,拖累队友和我一起没拿奖……

上个暑假,我几乎是在虚度中度过。作业没怎么写,OI 知识也没有系统地去学,整个人像是陷入了一种停滞的状态——既焦虑,又无力。

做往年 S 组初赛卷时,我明显感觉到卷子对我来说难度不小。代码看不懂,知识点也没掌握,就在这种状态下,我稀里糊涂地去了初赛。

其实我本来还期待能像去年一样,因为停课而直接晋级

注:香港去年 CSP-S1 因停课取消,所有报名者直接进入决赛,具体见下图。

更巧的是,初赛前一周听说有台风要来,我一度又燃起了希望。然而考前突然宣布:如果周六停课,就改用备用卷考试……我顿时就不想停课了(见下图)。

做往年卷做到怀疑人生之后,加上我得知停课就会考备用卷,我干脆彻底躺平。那之后我再也没碰过卷子,每天沉迷斗地主,就连考试前一晚,我也没有做任何准备,而是从放学一路斗地主斗到睡觉。

CSP-S1 考试当天

早上七点醒来,看了眼天气预报:只有黄色暴雨警告和三号强风信号——没有停课。我吃完早餐就出发了(虽然没报 J 组,但家离考场远,不得不早早出发)。

十一点多,在地铁上我突然发现自己没带准考证!本来以为放在文件夹里,结果带了个空文件夹出门……

到了考场附近,和同学汇合后,一起去大学食堂吃了火腿煎蛋饭,配一杯柠乐,花了 HK\$33。

吃完饭才一点多,外面下着雨也没法逛,我们索性在考场大楼里继续打斗地主,一直打到进场。

两点左右进场,考场是一个没有空调的演讲厅,禁止饮食,座位特别挤。对我这种体型偏胖的人来说,简直是煎熬。桌子设计也很不合理,A4 试卷两头悬空,手一动就可能碰翻旁边的东西,抬手高一点甚至可能“肘击”邻座……更离谱的是,从我的座位能看到前后左右考生的答案。

两点半正式开考。卷子也是很有趣,一张纸打印四页内容,还带着水印……座位太窄,坐着都不舒服,更别说在这里考试了。我先做甲部,发现有些算法根本没学过,心里有点慌,于是决定转战乙部。乙一的代码不长,是简单的 DFS,我心中一喜。但当时脑子有点乱,看错了一个条件,结果花了至少半小时,全部选错。为了冷静,我回头去做甲部,发现其实有些题目有提示,可以猜出答案。做完甲部再回去做乙一,这次状态对了,很快搞定。乙二看到 You have no eggs! 时笑死我了,做完发现这题比乙一还简单,轻松秒杀。乙三一开始看不懂,但看了第六题发现它其实是提示,借助它我顺利完成了前面的题目。

可惜乙一浪费了太多时间,做完乙三只剩十几分钟,脑子已经极度混乱。最后的丙部我懒得做了,全部选 A,然后……我睡着了。

回家在地铁上对了民间答案,发现只有 57.5 分,丙部只拿了 6 分。心想如果当时坚持做完丙部,分数应该能更高些,但当时觉得应该能过初赛,也就没太在意。

CSP-S1 到 CSP-S2 之间

本来以为稳过的我,看到分数线时整个人都傻了——香港 A 类居然要 66.5 分,这也太高了吧!幸好还有 B 类,我靠 B 类勉强进了,真是离谱。

开始练习往年题目时,我发现我几乎什么都不会,只能做做水题。稍微有点难度的题目,我就束手无策。但当时我还抱着侥幸心理:前两年第一题难度都是\textcolor{#F39C11}{普及-},后面随便打点暴力分应该就够了。(这正是后面翻车的原因)

顺便说一句,比赛前一晚我依然没有做题,而是打斗地主打到睡觉。

CSP-S2 当天

早上睡到自然醒,一看八点多还以为起晚了,匆匆吃完早餐就出门。也许是因为赶时间,我十二点多就到了考场,同学都还没到。

中午吃了沙爹牛肉饭加一杯可乐,花了 HK\$55,下面有图。

在考场门口感觉特别热,出了一身汗,进去后空调又开得特别冷,可能就这样感冒了。进场没多久我就开始打喷嚏(考场里还有好几个人也是这样),一直打到考试结束。虽然这影响了状态,但考差的主要原因并不在此,而是做题太少了。

两点半准时开赛。下载题目后发现 PDF 文件名居然是 day1,我一开始怀疑是发错文件了。读了一遍题之后,更觉得像发错了,因为居然有字符串的题。我没有一题会做!太棒了!最后决定从 T1 开始下手。

我一开始的想法是先排序再贪心,其实离正解很近了,只差一个反悔。但不知为什么,我就是没想到这一点。我尝试了各种贪心和排序方法,却始终无法通过样例。回过神来,我居然在 T1 上浪费了两个小时,却毫无进展。赶紧申请上厕所调整状态,回来后才开始做后面的题。

看 T2 时,我发现暴力根本拿不到分。当时我还不会 MST,也没写过任何生成树的题目,所以只用了十分钟就放弃了 T2,写了个输出 0 的代码交上去。接着看 T3,是字符串题,我写了个暴力加了点小优化,预期自己拿 25 分。T4 也是不会,写了个 next_permutation,对大数据特判输出 0 看看能不能骗分,预期 8 分。

最后剩下半小时,我回头思考 T1,但还是没有突破。其实 T1 本来可以再多拿点分数,但我当时心态有点崩,忘了写暴力和特殊性质,等到最后一分钟才想起来,已经来不及了。

出考场后和同学交流,发现大家都不会做 T1。那时我还不知道自己有没有三等奖,只能默默祈祷。后来上洛谷一看,才发现 T1 是反悔贪心,我离正解那么近,却还是不会做……果然还是太菜了。

CSP-S2 之后

CSP-S2 结束后的下一周就是 HKOI 初赛,然后……我又考砸了。错了一堆不该错的题,最后自己算分非常低。当时还抱着一丝希望能过初赛。现在结果出来了,没过,可能差几分,但没法改变结果了。

最后 CSP-S2 的得分是 25+0+35+12=72,拿到了二等奖。我把 T3 代码的在洛谷上提交,发现第八个点只跑了 1.04 秒,其实应该是有机会申诉成功多拿 5 分的,但我懒得弄了,毕竟还要花 100 块钱,而且也只能多 5 分,对结果几乎没影响。

我在打完 NOIP 之后,我今年的 OI 之旅就要结束了。希望我在 NOIP 能加油,为这段旅程画上一个不错的句号。