2024 ICPC 上海区域赛 记录

发布于 23 天前  541 次阅读


2024.11.16 Day1

中午从学校出发,坐了一个多小时的地铁抵达上海大学。鉴于并不是第一次来上海大学,轻车熟路,似乎闭着眼睛也能从地铁站走到体育馆。

面到了 Rei 和 寒鸽儿,准备热身赛。

赛前我们发现了屏幕点播直播,尝试点播了自己的座位号,发现效果不错,觉得很好玩。

热身赛于 -10:00 发放题面并且表示也可以先开始看了。于是我们开始读题,我读 A,pengpeng 读 B,youwike 读 C。我看了之后表示 A 看起来不像是一个签到题,pengpeng 读完 B 之后猜了一个结论,youwike 看了 C 之后觉得 C 也会做了。pengpeng 传授给了我 B 的做法。在倒计时归零的一瞬间我打开了电脑,启动了 vscode 并光速写完了 B 的代码,00:01 submit,又一次成为场上第一发提交,但是得到了 WA 的结果。我们对一行代码还能出错表示了疑惑,但是紧随其后别的队伍也开始交 B,都得到了 WA 的结果,于是我们断定这个题有点东西,让 youwike 上机写 C。youwike 于 00:04 提交了 C,得到了 AC。

随后 youwike 在听我描述了 A 的题意和初步观察后决定想 A,由我去看有人开的 D。读了 D 之后我觉得它看起来十分可怕,但是我断定这是一个简单的题目,于是进行了一些思考。期间 pengpeng 对 B 进行了一些观察,并且指出一个一个做法,实现,于 00:15 提交,得到了 WA。此时 youwike 也会了 A,开始上机实现 A。又在此时,我得到了 D 的做法,并且认为十分简单,于是抢下了机时,实现了 D,于 00:17 进行了提交,但是得到了 WA。观察代码若干分钟后发现常数开小了,改大后于 00:21 提交得到了 AC。

随后 pengpeng 修改了 B 并且于 00:23 提交,得到了 WA。他又指出会爆 int,更改之后于 00:24 又得到 WA。我与 pengpeng 讨论了代码,我指出他的实现过于复杂,给了他一个新的思路,于是他对代码进行了重构,于 00:39 提交,又得到了 WA。再找出错误后于 00:43 提交,再得到了 WA。期间 youwike 见缝插针地实现了 A,并一直表示做法没有问题只是还没有实现完。实现完后调试了一会通过了样例,于 01:00 提交,得到了 WA。下机让我上机对 B 进行一些打标观察,并进行了局部重构,没有发现问题。后 youwike 发现问题再次修改,于 01:16 提交再得到了 WA,于 01:19 提交再得到了 WA。

此时我们周围的几乎所有队伍都已通过了所有题目,开始大声讨论和离场,让我们状态非常爆炸。我并不知道 youwike A 题的做法,但我发现他又写了一坨屎山。我稍微进行了几分钟的思考,指出让他下机并由我来重构 A。随后我上机,重新以我的做法实现了一遍,于 01:26 通过了 A。期间 pengpeng 指出了一个早期的观察,并指出我们的算法在某些情况显然得到了错误的答案。我们对答案进行了观察,发现了计算过程中一个非常低级的错误,我将其改正后提交,于 01:32 通过 B。

rk 108。pengpeng 签到排队时还与我说,热身赛不必过于认真,我们可以通过热身赛集齐金银铜。于是非常顺利的,我们在我们的三场 XCPC 热身赛中均全力以赴并且依次得到了金银铜。

感觉状态还是不很好啊,希望明天能够有所提升吧。

2024.11.17 Day2

早上从学校打车去上海大学。上车之后我就开始打盹,快到目的地的时候我开始打起精神,然后猛然发现司机似乎比我还困?我觉得快到目的地了,应该没什么大问题了。到了上海大学门口大约五十米的地方,结果司机似乎睡着了,低速追尾了前车,后来知道前车也是另一支群友队伍打的网约车。这一撞直接给我们都撞的脑瓜子晕晕乎乎的。到了赛场放好随身物品,坐到位置上的时候就觉得精神不是很好,加上晕车类似的不断的有些恶心的感觉。

气球室大门紧闭,我们无法继续观测签到题气球的颜色,但是我们根据一些机缘巧合,以及一定的推断与猜测,给出了若干个可能的签到题选项,为我们三个人每个人都准备了一个第一时间先看的题目。

开始前我们又一次表示,打星队伍,如果不拿一血的话滚榜就不会显示照片了,所以我们再拿一次一血抛头露脸一下吧!

开场,我直接打开 I,感受完题意后,我发现它竟然真的是签到题。于是就开始快速的实现 I,在 00:05 时提交了第一次提交,但是非常意外地得到了 WA 的结果。我感觉到略为紧张。此时评测队列里挤满了 C 的 WA 提交,在这极大的压力下我还是定位到了细节错误,在 00:06 提交,再次拿到全场一血。

随后 pengpeng 看了 B,发现 B 是一个签到。他马上想出了做法并且上机实现,在 00:12 提交了一次并得到 WA,随后发现理解错了题意。我阅读了 D 并且想出了一个做法,上机实现于 00:20 提交,也得到了 WA,发现做法假了。

youwike 想出了简单博弈题 C,随后上机,在 00:24 得到了 AC。随后我想到了 D 的正确思路,上机重构,但在 00:30 再次得到 WA。随后发现一处错误,修改后再次提交 D,又得到了 WA。pengpeng 重构了 B,但是在 00:39 也得到了 WA。我思考发现了 D 的最后几个一连在一起的时候可以消耗构造出零,加上了特判,在 00:42 再次得到了 WA。同时 pengpeng 又修改,并在 00:52 得到了 WA,在 01:00 又一次得到了 WA。我看了 pengpeng 的代码,给出了一些我的修改,并让他继续思考具体实现。

这时 youwike 会了 G,他上机实现,在 WA 了一发之后于 01:22 通过了 G。随后我们发现了 B 代码中我指出的部分有实现问题,改正后于 01:29 通过了 B。结束 B 后我跟 pengpeng 讲了一下 D 的做法,说到一半我想起来了弹簧能够连接的事情,进行修改后于 01:41 通过了 D。

随后,pengpeng 和 youwike 花了较大的力气思考 E,但是我们对连通性相关的题目并没有很好的熟练度。youwike 上机实现 E,至大约 02:30 时发现了一个简单的问题,但是我们三个人都无法解决,随后他似乎想到了一个解决方案便继续实现,修修改改至三小时多时,youwike 表示他无法继续实现此题,并且状态比较差,指出让 pengpeng 来重构。于是 pengpeng 开始上机重构。

期间我对构造题 H 做了较大量的观察,我做了很多种不同的构造,并且上机尝试了一种,但没有得到通过。在大约最后一个小时的时候,youwike 看完 F 后认为 F 也是一个他可以做的数学题,最后一个半小时由他们两个人分完机时,于是我只能继续构造 H。

最后 pengpeng 在 04:59 时刚初步调完 E,于是他直接提交,并意外的获得了 AC。但是 youwike 的 F 并没有调试完成,我的 H 也没有找出正确构造。

最终六个题。总排名 rk33,排在了了金牌末尾。


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