2024 NOIP 游记
我不把它叫做“退役记”,是因为我还有一篇文章另写的。
学竞赛就像人的一生,有人功勋卓著,有人默默无闻,有人却满身伤痕。
希望这几年来的不幸和种种遭遇能带给我好运吧。那些打不倒我的,会使我更强大。
day -1
第一次这么不希望周末来。因为周末考完试就退役了。。。
以及,今天是最后一场模拟赛。
(但是打的不错,希望保持到 NOIP)
晚上改完题 vp 一场 arc,B 题结论题卡我两个小时,太悲惨了。
day 0
大抵是最后一天去机房了。也是最后一天停课集训了。
早上开始打模板,随便写了几个,就开了一场 abc 玩玩,结果 E 题卡了一个小时,趁机会复习了一下并查集。
下午继续复习模板,莫队、二分答案、exgcd 等等,还看了几个小时的构造。
晚上回家继续看模板,看之前模拟赛的 dp 题。毕竟是最后一次复习了,不知道大学会不会去打 ACM,且行且珍惜吧。明天也是 OI 生涯最后一场比赛了。希望一切顺利。
晚上看讨论区有个哥们发的文章还挺好的,摘录一段:
火车加速着离开了站台,我看见原野上一望无际的田地,那正是一个个OIer的竞赛生涯,那正是一个个普通人的一生。如同你合上一本真正好的书,就会感到一种深深的怅然若失。不过生活绝非一口气能讲完的,却又要一口气讲下去,所有的人和事都如流水般淌过,没有“多年以后”也没有中场休息。
而这一条条的流水,一粒粒的麦穗,都汇聚成河流。很多人都认识河流: 从雪山上落下的河,从树林中淌过的河,从城市中穿过的河;但很少有人能够意识到,所有这些河都是连在一起的,河水流过每一寸土地、也如我们的一生。
day 1
前一天晚上不知道是喝了小瓶咖啡的缘故还是太过紧张,一点多才睡着。不过不要紧,第二天精神还是不错的。早上七点二十多就到了,结果全是某 gdfz 来上学的?我出发的时候高新一中校门都关了,结果他们这会才来上学?
等到八点,WEAK1O1 的人差不多都到齐了就往里走了。进考场,熟悉的地方,熟悉的配置。没等到八点半就发 PDF 密码了,我线段树还没打完呢喂!
8:26
开题。看 T1。以为是个排序大水题,结果仔细看了看,并不是。正解也不是很一眼,但是能从题中窥知一二。想了十分钟没思路,果断开始打性质,得有分才行啊!花了二十分钟打完 AB 性质的点,开始看性质 C,觉得性质 C 的解法一出来就是正解了。发现还真是。我可以用 B 串去匹配 A 串,反之亦然,对答案不产生影响。而一个 A 串的点若要被匹配,被任意一个点匹上的结果都是一样的。分别记录 A 和 B 的全部可移动区间,若能匹配,直接减去 min,若 A 和 B 的某个区间不是包含关系(近似),则需要和相交区间长度取 min,保证答案合法。因此,能匹配的一定能匹配上,匹配不了的无论如何也没办法。同一可移动区间的字符是等效的。然后实现花了将近一个小时,在 10 点 10 分左右写完了。
10:20
中途上了个厕所,洗了把脸,就在 10 分钟之内调出来 T1 了。
然后看 T2,做了整场比赛最错误的决定:推朴素 dp。花了半个小时推+写,然后假掉,全部注释了。
还是看性质吧。想到一个点是被确定的点,且后面一个点也是,则这里的方案数一定是 \(v\times(v-1)+1\),若前后没有则是 \(v^2\),能容斥吗?我不知道。总方案数是确定的,\(v^{2^{n-1}}\)。但是怎么处理两个不相邻的一元限制?我不知道。
又过了一个小时,已经 11 点多了。T2 毫无进展,于是开始打爆搜,好在有前面的思考,爆搜很快就打出来了。这也是整场比赛最好的决定。因为有了爆搜我就可以猜别的性质了,考试后期靠着爆搜猜出来的后面 \(35\) 分的性质,吃饱饱了,起码应该比 CSP 分高了。
11:30
开始想 T3,花了点时间理解题意,爆搜都不好写啊!!好像 \(k=1\) 能写?不会啊!考完试听玮一说就会了,真是掉大分。然后看链的样例,诶?怎么全是 \(1\) 啊,那我就恭敬不如从命了,骗了 4 分。然后感觉不能再浪费时间了,赶快看几眼 T4 看有没有能骗的,经过 CSP 蓝钩线卡 2 分的事故之后,我深深体会到不管分有多少,能拿的,不好拿的,一定要拿,要不然到最后卡掉你的就是这几分。
好的,T4 看懂了,其实就是长度 \(=k\), 不需要考虑大于,有 \(O(qnk)\) 的暴力,吃了,样例过了。能优化吗?不会。能写链吗?不会。好吧,就这样了。
然后在 T4 的代码结尾注释添加了一下文字,也是对我零零散散四年半的 OI 生涯的作结:
/*
最终停笔于 12:40。
我的 OI 生涯到这里也结束了吧。
祝所有仍在奋斗的 OIer 和 GXYZer 好运
AFO
*/
期间又去推了 T2 的一个性质,再吃 \(15\) 分,爽爽爽。
好的,又想上厕所了。但是为啥有一个监考员一直站在我后面看我写?我的屎山很好吃吗?
12:30
还剩下半个小时,确认没有能吃的小分了,打开虚拟机,测代码。
T2 出问题了。
没有输出到 assign.out
里,而是到了控制台,并且一直出 0,定睛一看,原来是 freopen
写错了!!输出写成 freopen("assign.out","r",stdin);
了!赶紧改!在 dev 改!改好了,样例没问题,吓死我了。
到 12:45 了。去第二次上厕所,回了就开始写记录单。写完刚好 55。
估分 \([40,100]+60+4+8=[112,172]\),看 T1 有没有假了。
剧终,落幕。
好难过,不想就这样结束。也许我高一的时候每天再努力一点,多打几十场 AT 和 CF,多做点 dp,结果也许会比现在从容的多,好在没有留下太多的遗憾。我尽力了。
波波之前曾说,AFO 应该是一件很自豪的事情,只有真正到被年龄或某场比赛卡住而退役的人才有资格说 AFO。不管怎样,我已经到了我能到达的最高点了,不论接下来结果如何。我对自己很自豪,不知道他怎么评价呢?不知道他认为我是否能称得上这个称号呢?
最近几天在听 komorebi,就像走在飘满落叶的路上,阳光从叶隙洒下,顺着路远眺,那是遥不可及的远方。仿佛所有人都在想那里奔跑。可是跑着跑着人却越来越少,渐渐,自己也消失在奔跑的路上。戛然而止。然而远方依旧在哪里,我却达不到。
这便是竞赛吧,当你真正痴迷于它的时候,你已经在这条路上走了很远了。但毕竟竞赛不是大多数人能学的,也注定这这条路将会越走越窄。无论是天赋哥,还是勤奋哥,都有结束的时候。当然,我印象最深刻的就是 klb。初中时实力极强,但是去年只差一点就能进队,被卡在外面了。
下午 why 巨佬请我们吃了牛排自助餐,非常美味,也留下了 WEAK1O1 目前唯一存世的合照:
然后集体去哆啦出勤,和 XiaoLe 开了很长时间的赛车,非常爽。
有你们在真是太好了。
但是……还是太舍不得了……
时光荏苒,小 S 和小 Y 也会散去。
而我们和一个人保持连接的方式就是记住,仅此而已。
—— [NOI 2024] 集合风将这句话写在纸上,折成了纸飞机,扔出窗外。
纸飞机飞吧,飞向天空。
以此铭记。