意料之外的机会

因为新冠疫情的影响, 我在校队的一年半 (总共两个赛季) 时间里, 没参加过一场线下的 XCPC 区域赛, 这也算是我一直以来的一个小遗憾. 在十一月初的周末, 由于组里的 dew老师 能提供打星名额, 于是我和 施 还有 孙 去打星参加了武汉站的 ICPC 线下赛, 但是结果很不好, 只写出了三个题目(金牌线是六题). 打完之后感觉非常难受, 于是草草收场, 甚至连合照都没拍.

本以为线下打星之旅也到此为止了, 可令人惊喜的是, 睿说能去沈阳站继续打星, 鉴于dew老师没空, 施也在深圳, 于是我和睿拉上她的一个高中同学, 组 了个名为 “abibas” 的队伍.

11.15

初到沈阳

从小一直盆地丘陵地区生活, 于是对广袤的东北平原一直保有美好的遐想. 说来也挺惭愧, 我最远其实也只在本科毕业后去过一次北京, 正好借这次机会把足迹稍微再往北挪一挪. 睿4是黑龙江人, 这些日子听她说起过很多伊春的美景, 她的描述很符合我对林海雪原的想象----很想在某个适合的季节去看看满山金黄的秋叶. 当然, 沈阳作为一个省会大城市, 且在东北也算比较靠南的位置, 自然是没有这些景色.

下午刚出机场, 立刻感到一种透人心肺的寒意, 南京气温还是十多度的时候, 东北眼下就已经到了冬天. 沈阳和西安给我的初印象还有些类似, 同为北方工业重镇, 又需要烧暖气, 以至于雾霾较为严重.

令我感到惊讶的是, 沈阳机场内的广告有很多诸如博物馆, 音乐会和芭蕾表演相关的内容, 感觉像是一个艺术气息浓厚的城市. 突然想到大钢琴家朗朗也是沈阳人, 感觉还挺有趣的.

从机场到比赛地点东北大学其实并不远, 为图方便, 我和睿决定打车. 司机师傅的车载音乐是那种"土嗨"的电音, 我从未听过这种类似的东西, 还蛮有趣的, 一路上路过一些搭载了外放音响的店面, 居然也听到了相同风格的电音曲子, 不禁让人怀疑这是否是沈阳乃至辽宁的地域特色.

因为是晚高峰, 司机师傅看到路上可能会堵车, 居然开始抱怨起来, 一副想要怪罪我们的样子, 开始碎碎念起来. 他这样的态度令我十分费解, 不过毕竟初来乍到人生地不熟, 没必要和他过分理论, 也就当做一个小插曲一笑了之.

赛前热身

快到晚上六点了, 热身赛即将开始, 睿的同学还没来, 于是我和睿先去东北大学的体育馆楼上领取签到物资. 一路上我和睿看到的许多琴行, 不得不感叹沈阳的音乐气氛的确浓厚.

期间出了一个小插曲, 因为我们队是零时加的名额, 于是没有名牌, 导致进入场馆的时候颇为费劲. 并且比赛的机位也不清楚位置在哪, 于是我不免有些担心后续会不会再出些岔子, 万幸最后还是有惊无险, 在场馆的最后一排看到了我们的名牌和机位.

报名的时候用的是睿的父亲所在学校的名字
image

有趣的是, 对面的队伍是 xjtu 的同学, 还算是非常有缘分的.

睿的同学终于在热身赛开始前到达, 是之前向我咨询过考研经验的佟. 一阵寒暄之后, 发现前段时间还在纠结考研还是找工的他, 现在已经有了一个较好的 offer, 也为他感到高兴.

热身赛上得知, 本次比赛新增了一个叫做 “通信题” 的题型, 这也是 ICPC 赛场上的首次. 热身赛里也有一道, 我写的时候 WA 了很多发, 最后被佟找出问题所在, 遂 AC. 当时觉得通信题挺有趣的, 不清楚明天难度如何.

比赛后我们去吃了一家羊棒骨, 饭后稍微散步了一会, 最后回到酒店早早歇息, 等待第二天的正式比赛.

11.16

比赛

场地

image

我一上来发现 I 是签到, 写完一交收获 WA. 检查发现是忘了注释掉 “freopen”, 改掉后又是 WA. 我尝试换了下写法,发现还是 WA, 我顿时慌了起来, 一通滑跪认错, 甚至开始怀疑是否读错了题意. 还好睿及时救场, 一眼看出问题所在, 改掉一个地方后遂 AC, 算是有惊无险.

后面开了 M, 是一个比较考码力的暴力搜索, 尝试写了快一个小时才弄完, 但是跑样例居然没通过… 感觉我的状很差劲, 有点担忧今天是否会背锅.

在此期间睿和佟通过了 B, 并且睿说 K 有了思路, 于是我们开始两道题换着写. 我也让佟帮我一起调 M. 最后发现 M 我读错了题意, 稍微改写后收获 AC, 睿也在几分钟后通过了 B, 一切还算比较顺利.

赛程的后半段里, 我和睿一起讨论起 F 的做法, 经过 20min 的调整和修正, 我们弄出了一个神奇的 DFS 序上找 “最深环” 的做法. 经过一小时的实现, 我们最终一发通过了 F.

本以为本场比赛就此落幕, 没想到佟提到他有个 C(是一个通信题) 的点子, 不过有一点瑕疵, 就尝试口胡了一个启发式的随机化来修正. 可惜最后 WA 了, 改了几次依旧没法通过.

一开始我并不知道佟是如何做的, 于是睿给我从头到尾详细介绍了一遍. 我突然发现, 他们的做法得到的结果可能和题面的描述都不相符, 所以很多数据点都必然错, 和随机化的效果没有关系.

佟尝试又修正了一下, 可惜还是 WA. 其实我们已经定位出了问题, 我们只需要解决构造方法中出现的循环节即可, 但是这个问题相当困难, 此时离比赛结束仅有半个小时不到, 我们三人都一筹莫展, 而我所能做的也只是在草稿纸上胡乱画画.

突然间, 我意识到, 之前的做法中, 最后一段可以总体向前 shift 一个单位即可, 这样不论循环节长度是什么, 这样最后一段一定没有循环节, 因为 “任何数字减去 1 一定与原数互质”. 但是这也只是一个简单的脑洞, 并不能证明正确与否.

抱着死马当活马医的心态, 佟尝试修改并提交了一发. 令人惊喜的是, 我们最后居然在还剩 7min 的时候获得了 AC!

比赛结束后, 我们获得了 rank26 的名次, 进入了金牌线.

最后的滚榜, 我们是 6 题队最后一名, 乐
image

归途

能取得这样的名次, 已经是非常圆满了, 这一趟称得上是不虚此行.

回去的路上, 我和睿因为抢不到机票, 于是选择了卧铺. 我们一路上聊了很多, 也增进了许多互相的认识, 这真是一次难忘的经历.

在返程的第二天早上, 我们经过了长江, 江景还是蛮震撼的.

长江

image

按照约定, 发挥不错的话睿要给我买一瓶爽歪歪

image

总结

不得不感叹人生真是奇妙, 兜兜转转三年再回到校园, 虽然经历了近几年的坎坎坷坷, 但是很多东西还是和以前一样纯粹地让人觉得美好而感动.

感谢睿能给我我这样一个线下打星的机会, 能让我在退役三年后又能过一把 “拿金牌” 的瘾.

希望后来有机会能再多打打线下比赛吧, 就当是和睿一起旅旅游也是极好的.