ICPC2025Nanjing游记

· · 生活·游记

写在前面:

没想到学校的程序设计基地十分慷慨,为我们预留了一个南京站的名额(疯狂call爱心~)。我们队伍10月份才组队,训练也不超过10天,不过大伙都有NOIP省一的加持,所以也是有惊无险地拿到了Cu。

Day -1:

星期五从西安坐火车赶到了南航住下,晚上和队友去吃了顿必胜客(西工大什么时候通地铁(•̩̩̩̩_•̩̩̩̩)),结果喝了杯冷饮晚上拉了一晚上肚子(•̩̩̩̩_•̩̩̩̩)。更糟糕的是,我出门的时候忘了带肠炎宁片了,导致拉肚子一直持续到了第二天还没好(•̩̩̩̩_•̩̩̩̩)。

Day 0:

简简单单的签了个到,拿了点小奖品,其中还包括一只小袋鼠,结果发现现场一人送一只大袋鼠。

中午见到了自己的高中同学,蹭了一顿饭,饭后还转了转南航的校园。本人是西工大民航专业的,看到南航这么重视民航真的有点羡慕。

然后就到了下午的热身赛,开题以后发现全是袋鼠,前段时间一直在做南京站的题目,所以做了很多的袋鼠题,快速秒了BC,然而D题最后也没有调出来,出来以后发现忘了加一个去重操作了,感觉整个人心态有点崩。

Day 1:

到了正式赛了。开题以后先在VScode上配了个环境。事实上,我在赛前一个星期才学习了Ubuntu的编译等等的指令,而我另外的两个队友都没学过,所以我还承担了我们队伍赛时的编译指导。不过好在机器的环境都没有什么问题。

开题以后,先切了C题(数论加上对称性秒掉),不过仍然花了9min。然后我就开始看后面的题。一开始想跟榜,结果发现E不是人做的。于是转向K题,想通过搜索解决。结果交上去不对,于是就先让队友开了H题,结果H题读错了题意,写出来的代码O( n^2 )变成O( n^3 ),果断弃掉。K题硬控了我两个小时,直到发了午饭,边啃鸡腿边思考才恍然大悟:第一步将不死马最后一定陷入无休止的轮回。说实话,这个特殊性质刚想着这道题的时候就想到了,没想到是正解,然后就产生了将近120min的罚时。

然后就是最精彩的时刻了。我们三个人开始一起想F题。因为肚子不舒服,所以当时的脑子是一片空白,队友讲完O(wq)的算法以后才想明白用并查集。然后我另一个队友想出了二分优化查询步骤降到O(qlogw),剩下一个建边的过程。然后我想能不能剪枝降复杂度,然后就想到了O(nq)的方法,并且证明(?)了正确性。我的队友起初还不太信,所以我便写出了建边的优化代码。最后还是有惊无险地过了。

剩下最后50min时间,我们研究了G题(我求求你了,别把水桶整破好吗),因为肚子疼,最后我已经没法进行思考了。好在我的队友以一人之力疯狂敲码,敲出了大致框架,可惜还没来得及调试比赛就结束了。

说实话,因为我们的罚时太多了,我们都担心拿不了牌子了。但是没想到3题竟然全是Cu。就这样,我们有惊无险地拿到了牌子,圆满完成了第一场ICPC。

不过现在的我们与那些随随便便切下8道题的大佬相比还是太菜了,所以接下来要疯狂训练了。

今年的ICPC玩得很开心,明年再见!