• 欢迎光临~

NOI2022 游记

开发技术 开发技术 2022-10-26 次浏览

一切尘埃落定。我仿佛刚从乱石堆中满面灰尘地爬出来,精疲力尽地坐在地上,放眼望去,只有一片片残败的废墟。想挣扎着站起来寻找同伴的时候,却仿佛顶着一座大山,直不起身来。心中弥漫着无力回天的失落和空虚感,和命中注定的悲哀。还存在些许劫后余生的庆幸。赛场即战场,最残酷的事情就是看到自己身边的战友一个接一个的倒在自己面前,自己却无法改变什么。这次空子的失利第一次让我实实在在地体会到了竞赛的残酷。即使我仍然坚定地认为空子 100% 有集训队实力,可是我能做的也只是鼓励他踏上另一条赛道,并且默默希望我们能够“殊途”同归。这是四年前懵懂无知的我,在 jkp 与 hyc 退役时未曾感受到过的情感。虽然总是说注重过程的体会,可最终还是结果决定一切。今年同样不幸的还有隔壁学校的 msq,我现在也不能想象如果我拥有他的经历,我是否真的能够接受这样的现实。


学弟们是幸运的,他们还有一年。但同样不幸的是,他们仅剩一年。去年那么多高一集训队,到了今年,有 6 个倒在了金牌线前,只有 7 个人挤进了集训队。有时我常常会想,能不能把 50 这个数,稍微放大一点?但总会有人 rk51,即使改为 100 个,也会有人 rk101。只不过当那个人出现在了你的身边时,你才能深刻地感受到痛苦和绝望。


留下的遗憾也不止有这些。在 day2 刚刚考完出场之后,我们得到通知:昆山当地出现了一例新冠病例。因此闭幕式被取消,所有人需要当天离开学校,而我们则需要赶在下午 4 点半的高铁回到北京。这一消息实在太过仓促和突然。好像本来在欣赏一个优美的交响曲,起承转合,有高潮,有低谷。但听到一半,突然所有声音戛然而止,仅剩一片寂静。本来在 day1 开始前,我就已经开始期待最后的闭幕式了。笔试前一天,在我们接受一个关于考前到达 NOI 过程的采访的时候,志愿者小姐姐告诉我在 day2 后会有一个关于退役选手的采访在闭幕式上展示,并且在 day1 前一天,我还知道了会有一个关于吐槽和感谢金老师的小节目。这些都没有看到。还有牌子。本应在闭幕式上发的牌子也拿不到了。不仅如此,原本在 day2 之后的 puzzlehunt 活动同样只能被迫取消。还有徽章,一些我的徽章仍没有换出去。day2 当天和 dottle 说要在查分的时候换一下徽章,可惜最后也没有换成。还有,之前给 ISIJ 供题,金老师答应要在 NOI 结束后请我们吃饭,现在也没有办法兑现了。还有很多很多的事情没有做,就已经在回程的高铁上了。


当然,我的分数也是遗憾的一部分。但相比于前面的那些,我认为这甚至是微不足道的。毕竟,我还是进队了,独自一人。其实赛前无论如何也没有想到排名会如此之低。不过赛前的预期就是挂 100 分以内就能进队,后来证明确实如此:两天加起来总共挂了 86=60+26 分,但却仍然比队线高了 26 分。下面我也分析了这次失利的原因,有主观也有客观。值得庆幸的是——这是我 OI 生涯中最后一场 OI 赛制的比赛了。但仍然些许遗憾没能在最后一场 NOI 中画上一个完美的句号。


遗憾成为了这次 NOI 的主题。


另外留下深刻印象的是天气的炎热。到昆山南高铁门打开的那一刹那,热浪扑面而来。即使北京最热的一天也无法与那时的温度相抗衡。因疫情防控需要,我们提前 7 天抵达了昆山。住在酒店的 7 天中,只有 1 天的温度是可以接受的。那天走在路上,微风拂过带来的凉爽让我享受到了难得的舒适。剩下几天,每天无论是出门吃饭或是做核酸,都要在踏出门前做好心理准备,迎接太阳的炙烤。只有到 NOI 正式开始后的几天,秋天临近,气温才渐渐地降下来,安抚着人们的心情。


那 7 天在酒店中我们继续参加了北京队集训。有模拟赛的时候就上午做一下题;没有模拟赛的时候也就摸鱼摸过去了。模拟赛的题目的质量倒不见得很高,但非常值得一提的是,有一天的模拟赛中出现了一道树哈希。于是那天我将我从邓老师那里学到的树哈希技巧教给了几乎北京队所有人,大家都觉得这个方法巧妙且简洁。结果大家都知道了:d2t1 的数据很强,这种哈希被卡掉了 20 分。也就是说,模拟赛中这道本应对大家有帮助的题目,间接地让我无意中坑了所有人 20 分—— ylx 也因为这 20 分没能拿到金牌。这让我十分难过和后悔。还有一件特别的事是,ylx 在北京队交流时讲了两道 dp 套 dp,一道是麻将,另一道是我出的一道题。同样戏剧性,北京队最终没有人通过 d1t2。这两件事更添了遗憾。而且是一种“优势被翻盘”的遗憾。


这 7 天中我每天都会看一章《百年孤独》。我的语文老师说过一句话:一个只卖《百年孤独》的书店,就好像一家只卖矿泉水的小卖部。书中的描写平淡而富有力量,朴实无华却令人回味。作者的叙述中会时不时向读者透露些许未来将会发生的事情,仿佛在此时无论如何挣扎反抗都无法挽回结局,给人以一种徒劳无功的失落。仿佛命中注定的孤独从最开始就无法改变一般。马孔多在下雨。今天的北京也在。

NOI2022 游记

除去上面的遗憾以外,似乎有些矛盾的是,这次 NOI 也是令我最满意的一次 NOI。报道那天,顶着 30 多度的气温,40 多度的体感温度,身上背着包,手里提着行李,满头大汗地走进学校。在报道处签了到,领了住宿卡,取了自己的徽章,换了 ISIJ 专属徽章,就住进了宿舍。第一眼,看到了里面的四张床,送的拖鞋和洗漱品;第二眼,看到了独立卫生间和浴室。看到这里,住宿条件的优越已经尽数体现了。这无疑成为了历届 NOI 中住宿条件最好的一届。伙食也很棒,自助加上多样的菜品,还有良好的食堂环境,让人耳目一新。在安顿好后,我去大堂见到了 yyc,去围观了隔壁宿舍楼的狼人杀,又回到了寝室。


独特的徽章是很令人满意的一环。这次 NOI 每个人都能领到一些印有代表自己图案的徽章,可以和他人交换留作纪念。这个活动很棒,既有新意,也能得到自己和其他 OIers 的徽章,在选手中深受好评。只是大家都有点后悔之前没有多要一点徽章,导致最后有很多人的徽章都换不到了。当时 CTS 时也给每人发了徽章,不过当时人数比较少,徽章数量很充足,足以让每个人收集完所有人的徽章。


20 号当天晚上的文艺汇演十分令人难忘。本来是没有我的节目的。之前我跟 yyc 说,如果有人愿意和我一块唱,我就去唱一个。当天快要吃饭的时候,yyc 说有人愿意和我一块唱歌,让我迅速过去试音,我就赶过去了。愿意跟我唱歌的是一位天津的选手,最后随机挑选了一首《十年》。也是在那时候认识了三位非常友好的 staff。文艺汇演很热闹,最开始 yyc 表演的《光阴的故事》很成功地带动了气氛,大家都在下面一起唱。然后就是我们唱。虽然感觉还是发挥的不太好,不过本来也就是图一乐。staff 姐姐唱专门写的《一沙一世界》的时候,我坐在下面还对旁边的空子说:“你看,歌词里有繁星。”staff 姐姐唱完之后就到了谁是卧底环节。无论是游戏中的还是旁观的观众,都非常享受游戏的过程。随后一位女选手唱了孙燕姿的《我怀念的》。然后,是 dottle 的演讲——《我的一个机器人朋友》。演讲很趣味,包含了很多能让大家都笑出来的梗,起到了非常好的节目效果。我中间还被小 cue 到了一下。最后一个大合唱《开心向前飞》之后就结束了。很开心,就是感觉有点短。这是我参加的第一个——当然也几乎一定是最后一个文艺汇演。之前一直非常遗憾没能在之前还有文艺汇演的时候参加 WC,前段时间的 APIO 也因疫情原因无法线下参与。这几天慢吞吞写游记的时候又重新听了几遍《一沙一世界》,NOI brings us together。听的时候我脑中就能想起当时那个黑箱教室中,后排坐在地上或椅子上的拥挤的人群,台上 C 和 pascal 的巅峰对决。这次文艺汇演给我留下的记忆是独一无二的。


第二天早上先领了包和胸牌,然后被拉去接受了一个小采访。大概就是 staff 小姐姐坐在对面,侧面摆一个三脚架,然后问完问题我就开始讲。大概就是讲一讲这几天来昆山的经历,还有一些自己的感受。其实当时有点小紧张。回北京后找 staff 小哥哥要了采访的视频,虽然感觉我有点笨笨的,但总体也还可以。我还拉了空子,wzj 和 dyq 来接受采访,然后采访完我之后我们四个就一块坐在小姐姐对面。dyq 比我还紧张,不知道怎么说,重新来了好几次。本来说采访的视频会剪一部分放到开幕式,可是并没有看到。最后在线上的闭幕式短片中出现了。


下午开始在校园里随机游走。把大堂的一楼和二楼都走了个遍,观看了贵族学校的教室,在赛场门口隔着门观察了赛场,又在赛场门口仔细研读了考场说明。本来猜测笔试中会考不能将题目带出考场,可是最后没有猜中。大会场的舞台上有一架钢琴,因为太久没摸手痒碰了一会。但也没敢弹太久。晚上先是跟着三位 staff 混进了仓库,后来又出门散了会步。走到操场正中,我和 yyc 躺在草坪上,能看到天空中一两处闪烁的星光,还有时不时闪光飞过的飞机。想起了两年前,也是晚上,和邓老师打完桥牌之后躺在人大附中操场的草坪上。天空中也有星星,区别只是两年前的空气凉爽而静谧,而昆山的天气炎热,一旁校园外传来的卖唱声也略显吵嚷。


然后就到了笔试日。上午在北京队寝室外面的桌子上玩了玩三国杀,下午笔试完被 yyc 拉去摆拍。摆拍过程中顺便又看了两章《百年孤独》。晚上跟 yyc 一块在大堂摆摊。等着别人来往歌单里加歌,然后我们再发徽章。我是第三个加的,选了一首《Battle Symphony》,金老师说我的品味不错。摆摊到最后,临走前又被拉去接受了一个关于吐槽金老师的小采访。由于第二天还要考试,我回去得比较早。到这里为止,这次 NOI 可以称得上是完美。晚上大家睡得都比我早,现在看来,也许我应该在当时,还有 day1.5 的时候,多跟空子聊一聊,让他不要那么紧张。这样也许能改变结果。


比赛日,写点真实的。现实总是要面对的。

Day1。早上 6 点半起床,随便吃了下早餐就去考场了,竟然有些小紧张。开始后做了 45min 的 A 题,然后开 B。前前后后做了大约 3h,发现了每个位置最多扣 4 的性质,设计了 dp 状态,也知道需要做 dp 套 dp 求出 DFA。可是 dp 状态设计得很差,状态数有足足 120000 个。考场上一个状态都不会卡,也不会写 DFA 最小化。最后由于想要留下点时间看 C,就只写了状态较少的 (kleq 2) 的部分。C 题看了一会,想了 (u=1) 的部分,发现需要一个长剖线段树,但写完才意识到根本没办法调试:交互库只返回了两个巨大的 ull 哈希值,并告诉你这两个数并不相同。到最后也没有调试出来。比赛过程中,周队长和 zyb 经常会在我后面出现。期望得分 100+65+0=165,最后 A 题没开 ll,B 题当且仅当 (n=3) 挂,只有 75+30+0=105。低到离谱。

回去仔细分析了一下失利的原因:首先是对自己有些过于自信了,写完 A 过掉大样例之后认为没有问题,完全没有检查/测极限数据/对拍,导致最后挂分。B 题也没有和暴力对拍,过于轻信了大样例的强度。后面就决定 day2 的时候多对拍,多仔细查一查。Day1.5 上午完了两把狼人杀,接到了胡老师的电话鼓励,下午回去玩了很久的三国杀。

Day2 需要说的并不是很多。比赛时 AB 做得很顺利,剩下 3h 时间中有很长时间没有意识到两端是没用的,结果只会一个切糕的 (k=3)。后面意识到的时候已经不剩多少时间了,就优化了一下自己之前写的 dfs。最终分数 80+100+39=219,A 题由于写了 2 年的树哈希不对,C 题则有 6 分 WA 了,现在也没有找到原因。剩下几个人考得并不很好,B 题都没有做出来。很遗憾。出考场就收到了下午就要回京的消息。很快,仿佛只有一瞬间,就带着失望和落寞坐在回京的高铁上了。

游记鸽了实在太久,写到这时,当时激愤的情绪早已平淡下来。空子的文化课学习逐渐踏上了正轨,而我也投入到了预科的学习当中,学弟们也在为 noip 做日复一日的训练。

《百年孤独》也终于读完了。

程序员灯塔
转载请注明原文链接:NOI2022 游记
喜欢 (0)