2025 ICPC 成都区域赛 记录

发布于 6 天前  206 次阅读


2025.10.24 Day0

我们在周五的中午出发。航班从浦东到双流,导致我们需要起早八赶往浦东,才能在中午前到达浦东。

有趣的是我们乘坐的四川航空的航班上,乘务员会拿着一罐老干妈询问乘客是否需要加辣酱。很久没有吃过老干妈了,品尝了一下,发现似乎和想象中的味道不太一样。

落地后花了一个小时到达了酒店。有趣的是酒店大厅上赫然挂着 Costa Coffe 图标,第一次推门进入时误以为走错到了咖啡店随后转头就跑。

因为去年 CCPC 重庆吃火锅吃坏了肚子,这一次我们刻意注意了饮食,选择较为清淡的食物。想来想去发现似乎没有什么地方特色餐馆是不带辣的。我提议去吃点云南菜,不料与我想象的云南菜并不相同,每道菜里都放满了辣椒,感觉都吃不出食材原本的味道。

晚上回酒店大家凑在一起玩了一会 UNO,随后又玩了德扑和不知名组队博弈游戏。很少参与这些多人游戏,对我来说挺新奇的,不过比较菜,感觉玩什么都不太明白。

2025.10.25 Day1

中午起床,前往郫都体育馆。场地不大,而且目测厕所数量有限,预想正赛时厕所大概率有长队列。

热身赛最后一题问去年成都站滚榜时播放的 BGM 名称,上 B 站搜索去年滚榜视频,发现 B 站帮助我们识别出了音乐,输入就通过了这道题。

其余三个题我们一人一个写了。发现比赛键盘比较奇怪,键程比较短而且键间距缩短了,按右方向键时很容易按到 Ins,而且对于我和 OIer_kzc 习惯使用长键程键盘的人来说可能误触情况较为明显。在热身赛时我们花了不少的时间码入了不少代码,在一定程度上习惯了键盘并大幅降低了误触率。

OIer_kzc 测试了选手机和评测机,发现评测机似乎比选手机慢一倍,但是在 STL 方面缺可能快一些,在矩阵乘法等测试中也表现得差不多。表现较为诡异。

2025.10.26 Day2

我们提前一个小时来到了场地,来的比较早,不过厕所已经开始排队了哈哈。

将开始时我们观察了一下气球颜色,发现最后几个色颜色较暗,于是我们猜测签到题会在前面的部分。于是 ABC 给 pengpeng,DEF 给我,GHI 给 OIer_kzc。

结果开场后我很快粗略观察了一下 DEF,发现似乎都不是签到题。这个时候 pengpeng 和我说 A 可能是签到,于是我去看 A。我发现 A 我似乎可以将总和设置为一千以完成构造。于是我上机写了一下,提交,在 00:08 的时候得到了 WA 的结果。此时 G 和 J 均已有若干支队伍通过,他们两个人分别观察了一个题并且都会了。于是我下机,让他们依次完成了这两个题。他们分别在 00:12 和 00:16 通过了 G 和 J,在此期间我观察了 A 的代码但是并不觉得存在任何问题,并且重新阅读了几次题意,确认不存在误解的问题。随后我开始怀疑一千是否足够,我与 OIer_kzc 交流了题目,他最开始表示一千不够,后来经过我的解释又觉得我说的很有道理。我将代码中的一千改为了十亿,询问 OIer_kzc 是否应该尝试交一发。我们在犹豫之后决定尝试一次,于是提交,在 00:28 幸运地得到通过。

随后他们上机并在 00:40 通过了 B,我阅读了 L,发现是一个很简单的题目,在上机完成实现后于 00:55 通过。此时一个小时,五题,我们排名大约为十,正巧的是复旦的另一支队伍排名正好比我们靠前一位,保持了较长的一段时间。

顺带一提,我个人认为成都站的大屏幕显示不是十分合理。在比赛过程中尤其是比赛后期有不少时间在进行排行榜滚动。实际上对于参赛选手而言,更为重要的应当是评测队列。大部分选手应该都有提交后下机并抬头从大屏幕上观察评测结果的习惯,较多赛站会将其始终保持在半屏排行榜半屏评测队列的状态。虽然个人认为排行榜的滚动也并不是十分有意义,因为排行榜很长,对于不管在排行榜哪个位置的队伍,要从屏幕上找到自己的队伍都是相当不容易的。所以队伍会选择从自己的电脑上查看排行榜,观察自己的具体排名情况,而不是花一段时间持续观察大屏幕的滚动。相比之下,如果可以保持显示排行榜头部,或者在头部位置滚动可能更有意义,大部分队伍应该都会通过观察排行榜来确认开题情况,头部队伍的显示可能更有意义。(当然,全榜滚动对于拍摄、领导观察等部分确实可能更有意义了。)

随后各队伍主要在集中攻克 C、D 两题。pengpeng 会了 K 题,此时还无人通过。于是我们让 pengpeng 上机进行 K 的实现。但是这不是一个易于实现的题目,pengpeng 花费了很多时间编写代码,并在中间就细节部分与 OIer_kzc 进行了多次讨论。我和 OIer_kzc 对 C、D 两题进行了思考,经过了一段时间,我们互换了题目,由我来思考 C,由他来思考 D。很快我就得到了 C 的做法,由于较为简短,我先行上机完成实现,于 01:42 一发通过。这也是我在这场最后一次上机。

随后 OIer_kzc 大致得到了 D 的做法,pengpeng 则陷入了 K 的无限调试之中。我阅读了他的代码,但并未发现大的问题。他经过了一段时间的上机测试完成了修改并通过了样例,在 01:49 提交,得到了 WA 的结果。随后打印,机时给到 OIer_kzc,他在 02:13 通过了 D。随后 pengpeng 又进行了一些上机测试,发现了一处越界情况,于 02:28 再次提交,但是又得到了 WA 的结果。随后立刻发现有一处未改完全,于 02:32 提交但得到了 RE。结果很快又发现了一处未修改完全之处,修改后于 02:35 提交得到了 AC。

在 pengpeng 上机测试 K 的期间,我们观察发现一些队伍通过了 M,我阅读了 M 但并未想到好的做法,分享给 OIer_kzc,随后我去阅读前面的题目。我阅读了 I 并得到了这一计算几何题的做法,分享给了 OIer_kzc 他觉得并没有问题,在 pengpeng 完成后我将这一做法转述给他。由他构思实现这一题。此时 OIer_kzc 也想到了一个 M 的结论,与我讨论之后我们认为没有大的问题并且较为好写,上机实现完成后于 03:03 提交但得到了 WA。我们担心可能结论错误,但是 OIer_kzc 上一次厕所后发现了代码实现中一个少考虑的情况,修正后于 03:15 通过了此题。

在 OIer_kzc 调试的期间,pengpeng 开始实现 I。OIer_kzc 通过题后我已阅读并大致思考过剩余的几个题。不过他坚持先思考 E,因为在前期他们已经进行过一定的思考,他打算完成推导。于是继续由我对 F 和 H 进行思考。但是这两个题都十分困难,我在两个题上均花费了大量的时间进行思考,但几乎没有得到任何有用的进展。

pengpeng 的 I 题最终在 04:25 完成并提交并直接通过。我们本做好了无法通过的准备,但是一切顺利,十分开心。在四个小时左右 OIer_kzc 完成了 E 题的推导并开始上机,他最开始预计二十分钟完成,但是花费了更多的时间。到了 04:50 左右他完成了题目的实现与交互器的实现,但是并未直接通过。在最后十分钟紧张的调试中并未找出错误,最终没有通过 E。

比赛结束,原本我们认为我们距离理想的排名应该还差了一个题。从 domjudge 上我们不能看出提交时间,但是经过我粗略的观察,封榜时我们排在正式队伍第七,排在我们后面的任何一个队伍在最优情况下可能都无法超过我们。有机会的中科大的队伍也在比赛结束后第一时间找到了我们,并确认了罚时不如我们。后来我打开了 board.xcpc.io 看榜单,结果发现北大的两个队伍未通过题目的提交时间却均为 299。我立刻把这个事情分享给了队友,我说他们有没有可能在封榜后都没有通过题,那样的话看起来我们好像可以到季军啊?

结果我仔细地一计算,猛然发现在这样的情况下,我们的罚时似乎比他们差了二十八分钟。我重新检查了排在我们前后的所有队伍,他们在封榜后的提交数量均较多,且看起来似乎均为 299,各个队伍似乎都没有有效过题。于是我又在猜想,不会结果就是我们正好差了半个小时。这一结果听起来似乎是比他们比我们多过一个题目还要糟糕。

最终结果是 OIer_kzc 在比赛结束后一段时间后在参赛机上调出了 E 的错误,并且我们发现北大的队伍确实没有在封榜后通过题目,最终我们以两发罚时的差距错失了季军。

复旦的另一支队伍则卡在了 C 题之上,他们最终成为了没有通过 C 题的排名最高的队伍。他们虽然最后通过了八个题目,但是却被成都站异常地高的金牌线拦在了银牌第三名的位置。

两周后的南京站还是我们两支队伍,我们互相安慰着南京站再一同努力。


走出赛场,pengpeng 从兜里掏出了一张不小心带出来的 +2 UNO 牌。

“我靠,我们多出来的两发罚时!”

另一支队伍差了四发罚时,是不是又被接了一张 +2 呢。


我缓慢吐出一串啊吧啊吧并不再想说话