在这之前的故事 / OI 回忆录

· · 生活·游记

或许是拥有了充足、甚至过多的空余时间,我最近也开始「常常追忆过去」,感叹这一路的历程。

我曾经认为做日记是浪费时间的事情,可当意识到自己已经逐渐忘记许多小学、初中的趣事,记忆在时间的冲刷下崩塌的速度超过了想象,我才珍视起那些已失去的情感。

就在今天,CTS2026,我 OI 生涯中的最后一次考试,也落下了帷幕。

现在,我站在这段也许有些平平无奇的旅途尽头,我想,我必须写出这些文字,不为追求文学性,仅仅是记录下这些值得珍藏的回忆。

我也反复问过自己,如果失败了,我还会这样写下这些吗?我是以“胜利者”的姿态写下的这些吗?

或许会,或许不会。我终究是放弃了思考。

作为青春一个有趣的注脚,许多羞于启口的黑历史,现在也终于能够一笑置之,希望也能为大家带来些许欢乐。

一不小心就写了一周,字数也上万了,再次遍历一遍旅程,许多惊喜从记忆的角落中跳出,却又是如此怅然若失,感叹于贫瘠的文笔无法抒发这份情绪,有些遗憾,也只得端出这样一份答卷。

小六 2019\sim2020

一切故事起源于一次随意的尝试,由于我在小学阶段参与的一些“编程”兴趣班(实际上是 scratch 与类似的一些类编程语言)与朋友的推荐,我在家长的带领下来到广州二中密考。

记得当时面试的 OI 任务是学会二叉树的前序遍历、中序遍历与后序遍历,并掌握知二求三的方法。由于提供了学习资料,实际上也并不难。

语数英的上机考试好像是毫无准备地考的,但是成绩意外地很靠前?

在别人手握一大堆票的时候,我只考了二中这一所学校。也是这一年,密考这一类招生被教育局点名,并开始执行摇号升学,有惊无险的是我成功摇中了二中,虽然实际上摇不中影响似乎也不是很大。

总之,我成功地进入了二中的数信班,或者称作基地班。

在 2020 年的暑假,我们来到二中,正式地开始学习 OI 内容。

第一次训练的时候,周围的同学们都在用一个叫洛谷的网站,我便也注册了账号。作为永远的起名苦手,我一直纠结用户名怎么取,由于当时我用的是红石粉做头像,取了个叫“一颗立志组成计算机的红石”的中二名字,不过自己都看不下去了,马上改成了简单的 cyffff,也一直沿用至今了。

当时正逢疫情时期,学校里没有什么工作人员,张海强老师带着我们去到食堂吃盒饭,桌子上还用塑料板隔成四个位置。

食堂有两层楼,一层与二层之间有一个天窗,我们就坐在二层天窗旁的几张桌子,当时谁也不会想到,这一个习惯延续了六年。

作为零基础选手,虽然水平不如其他已经学过一些内容的同学,但我对语法与基础知识很有兴趣,总是抱着一本通去自学,课后也自己找洛谷上一些红题橙题来做。

印象深刻的是第一次遇到数组越界的问题,我拉着家长反复研究代码为什么无法通过,最终在尝试下才认识到原来调用 a_{1\sim 10} 需要定义 a[11]

在这个学习阶段,这样自学下来,我也逐渐稳定在中游偏上的成绩。

在学校的前期 OI 网站上,我得到了属于自己的账号 20199gdgzoi96,由于有做题排名机制,所以也有几位同学在卷做题数刷水题,现在看来也挺有趣的。

因为洛谷的功能很多,所以大家都乐于使用洛谷并一起摸索新功能。

由于“蒟蒻”文化在刚接触 OI 的选手圈层中盛行,机房的大家组建了一个叫做蒟蒻看世界的团队,可能你们也注意到了,JRKSJ 正是这一团队名的首字母。

咕值与其排行对这一年龄的小朋友吸引力很显著,且当时并未对题解格式做出详细的规定,于是我便写下了格式杂乱、内容无物的第一篇题解。

于此同时,社区分的另一个获取方式便是贡献题目,虽说是这样但我也很清楚无法达到公开赛标准,不过还是会自己出着玩,基本上是学了什么就出点什么,前期不会用程序造数据的时候甚至还是自己手动造的数据。

这些题非常的黑历史,不过也可以放出来让大家笑一下,没有进行任何的修改,不会维护,也不建议任何提交(

初一 2020\sim 2021

正式步入初中生活,我们被允许照常学习文化课内容,在中午大家午休的时间还有傍晚的晚修前的时间来机房训练。由于我小学时并没有午睡的习惯,所以适应地比较轻松。

几个月的学习时间让我们成功地掌握了一些简单的数据结构与算法,我们也迎来了第一场正式的竞赛——CSP2020。

有些可惜的是 20 年还没有写游记的观念,只记得当时 J 和 S 都没有达到分数线,但是 S 只比分数线低 0.5,所以意外地通过了 S 但没通过 J。

于是我就遇到了 儒略历,取得了 10+55+0+0 的好成绩,压线拿到了二等奖。

不过这对当时我来说并不算不能接受的成绩,并且才学多久嘛。

因为考了提高组,所以还有机会参加 NOIP,但是又遇到了排水系统,印象中是 70+24+5+5

寒假期间我们参加了 GDKOI2021 普及组,不过分数也无从考据了,比较有意思的事是我们一起把题面复现并造了数据,不过这个就不方便展示了(

另一件大事是,JRKSJ 出题组 在 26535,mcyl35,dqstz,Ntokisq 和 critnos 的努力下成立了!(这里坐不下这么多人×以下简称 35)

看到别人做自己的题目是件很有成就感的事情,且幸运的是我们的第一场公开赛举办得很顺利,没有出现大锅,还收获了一些好评,也激励我们继续办下去。

这一个赛季我们举办了两场公开赛:

我主要负责了 JFCA 和 异或 两题,前者是稚嫩的签到板题,后者是一个基于随机数据的小巧思,但随机数据让某经典乱搞通过了。

从比赛说明界面可以看到一些那个年龄段独有的痕迹w

这一场比赛我主要负责了 01 序列 这题,但这个 idea 应该是来自 35 的。

说到用户名,大家在这一年都选择了更换自己的用户名,许多同学改了神秘的五字用户名,但我比较少更改用户名与头像,可能是想让别人更好记住自己。那段时间 waifulabs 突然流行,我们生成了一堆头像,这个头像也是那时候的产物。

这段时间的水平提高了一些,能够理解一些进阶题目的题解,但当时没有意识过度依赖题解,会对自己的独立做题能力造成什么样的打击。

当时还存在着洛谷日报,我便在 OI-wiki 找了一个没有人写过的知识点线段树分裂现学并写博客,初一小朋友的虚荣心真强啊(

同样是为了咕值,这段时间我还搬了很多题,比如缺失的 THUPC/THUSC 2017,以及造了特征多项式的模板,不得不说洛谷这招太狠了,能让小朋友主动为他们搬题。

另一个相当有意思的一个回忆是当时我还很喜欢去为题目添加 hack 数据,虽然有许多的 corner case,但是真正的卡掉暴力或是错解还是令人相当兴奋的。

初二 2021\sim 2022

我的第一次大失败,CSP-S2021 来了。上午信心满满拿下 J 组满分的我怎么也不会想到下午做了一整场第一题 廊桥分配 都不会,心态完全被打乱,后面的题目几乎没有开,最后只拿到了似乎是 40 分,连三等线都没有够到。

回到家之后我大哭了一场,思考自己是否不适合继续走下去,就像许多同学一样完全回归文化课。

最终在家长的安慰和艰难的抉择中,我决定继续,仅仅因为自己就是喜欢这一个科目。

先前逃避的独立思考能力被摆上来,警钟被第一次敲响,如果要认真地面对这一竞赛,我必须要改变自己的学习方式。

当时在游记里写了些很中二的话,但是因为太羞耻了就作为黑历史隐藏掉了,直到现在退役了才重新公开

幸运的是,在这之后一个月的 NOIP 中,第一题是简单的模拟题,我成功拿到了一个 194 的成绩,做了很多部分分,对当时的我来说相当不错了,打了一剂定心针。

我试图在洛谷上吸引别人注意的行为减少了许多,能够真正地理解与掌握一些提高省选算法,能尝试自己做先前觉得毫无头绪的题目,连题解的美观程度都有显著提升。

年底,教练让包括我的六个人来到专门的竞赛小机房学习,并给了我们高中 OJ 的账号 2021gzez03,参与一些更难的模拟赛并系统学习算法数据结构。

一件有意思的小趣事是,某一天 35 找到了一首名为 mopemope 的儿童金曲 mv,@iorit 突然想起自己曾经在某个叫 Phigros 游戏里面听过这首歌,大家都对这个新奇的游戏很感兴趣,纷纷入坑了这个音游。

当时对音游和音游圈都没有什么概念,phi 的社区也没有成长起来,我们便自行摸索着打歌过主线。这个游戏很快也传到了班上,非常保守地估计,班上有至少一半的同学玩过 Phigros。

由于我此前一直没有找到什么感兴趣的游戏,Phigros 便成为了我最常玩的游戏,我用饭卡套做防滑垫,溜到厕所里借着网络卡顿绕过防沉迷系统,也是休息时间中的一剂重要的调味料了。

一步步走向制霸的路很有趣(虽然现在还是没有拿下 rrat),不过这都是题外话了。

回到 OI,这一个赛季中 JRKSJ 出题组也举办了两场平稳落地的公开赛:

这两场公开赛里面我只负责了一道 risrqnis,是一个传统的分块题,题目质量还不错,也算是我真正第一道有意义题的目了。

初三 2022\sim 2023

初三到来,我们迎来了第一次停课集训。和寒暑假或者国庆期间的集训不一样,停课有种合法逃课的爽感(

由于一些教学安排原因,我们这一届的基地班的文化课教学进度是完全按照课本来的,而林盛华教练认为文化课比较重要,一直建议我们重视文化课,除此之外还有为了留一条退路的原因,我也便认真地学习了文化课,甚至在停课期间会选择一些作业晚修时间做。

我在对再次不会做第一题的担忧中迈进了 CSP-S2022 考场,不幸的是我的担忧应验了,我完全不知道 假期计划 怎么做。

不过一年以来的模拟赛训练还是让我能够冷静下来,快速地决定先做后面的题目,果然把 策略游戏 秒了。

回过头来做假期计划,我退而求其次,写了一个比较暴力的乱搞,并做了数据分治,在大样例中表现意外地好,终于放下心来,把 星战 和 数据传输 的暴力写了写就结束了,最终得分是 95+100+60+52,假期计划出了一点小错。307 分不仅是一等奖和七级钩,更是对我这一年成果的肯定。

在 NOIP2022 前的这段时间,疫情再度爆发,居家学习重启,而教练让我和 35 随高中学长们留下来一起训练到 NOIP。

这段时间印象最深刻的好像是两个人住一整栋宿舍太舒服了?

恐怖,喵了个喵 来袭!再次地,我相信了题目难度顺序,得到了 100+0+35+20 的结果。

事实上,这场 NOIP 的结果也不仅仅是因为开题失误,建造军营 完全没想到多项式复杂度做法,与 比赛 极度相似的维护历史和题目就在考前一周的模拟赛中出现过,甚至我还写了题解记录,但是就是没有将维护历史和的推导方式消化掌握,最终只能在考场上后悔。

考完 NOIP,我们便回归了文化课,在初中的最后一个学期里将精力放在了中考的准备上。过程中也参加了一些 OI 考试,比如 线上 WC2023、THUSC2023,虽然都没有考出很好的水准,但是奖项却意外地不错。

JRKSJ 的比赛也在这一年中落地了三场,有面临意外重题的 \text{Round 6},有与 JROI 出题组 联合举办的月赛 \text{Round 5},也有平稳落地的 \text{Round 7}

这几场比赛中我负责了 Eltaw,Concvssion,Clock Paradox,月下缭乱 四题,其中 Concvssion 是一道解法出乎意料有趣的难题,也是我非常满意的一题。

初三真是一段很美好的回忆,班上同学们之间关系很不错,大家一起调侃老师又说了什么名言,谈论哪位同学的填词大作,基本上所有人都能说上几句。我限于兴趣和勇气没能参加的活动也很有意思,深夜空宿舍里例行举办的「情感大会」互相真心换真心、在晚修结束后蹲点教师办公室试密码偷手机什么的,这就是青春啊....

在这样松弛的氛围中中考到来了,因为数次月考的原因,我已经对考试没有那么多的紧张了,平常心地考完,最后竟然超常发挥,拿到了 763 分的好成绩,远远超过了我数次月考与模拟考的水准。

毕业典礼上的心情已经难以追溯,或许是回忆着三年点滴、“眼里有光心中有爱”,或许是想着许多同学仍能在假期后于此处重逢,像每一个普通的日子谈论着炎热的天气与接下来的聚餐,无论如何,时间的脚步终究不会在此停下。

高一 2023\sim 2024

中考后的暑假还没过去一个月,新的一轮集训就又紧锣密鼓地开始了。随着一届学长们的离开,我们搬入了高中机房,也成为了正式的参赛选手,开始了完全停课训练。

日程变得两点一线,模拟赛、摸鱼、讲评、改题,但意外地,有同学们一起讨论一起欢笑,这样的日子不仅不枯燥,而且还相当有趣。

遗憾的是,CSP-S2023 和 NOIP2023 的结果虽然都说得过去,但仍然说明了自己考场策略的一些问题,过度高估了最后一题的难度,并错误地分配时间与预期得分,没有做好“应当需要拿到当天比赛接近满分的心理准备”。

而 WC2024 和 联合省选 2024 的溃败更为直接地揭示了我在高思维难度题目(水镜,魔法手杖,迷宫守卫)中无法直接地找到思路方向,从而完全无处下手的问题。只有在 APIO2024 中,我用高复杂度做法通过了 星际列车,将它与前述三题对比可以很明显地感受到我在长链条思考能力上的匮乏。

直观地理解了自己与他人的差距后,意识到时间已经不多的我终于再次做出了改变。曾经我认为记录模拟赛题目是不必要之事,事实证明只有真正地记录一遍才能将套路与思路收入囊中,以在遇到相似题目之时识别出来。我开始在 解题思路分析 中记录遇见的好题,并整理、归纳、总结它们的共同特征,以及为什么会想到这种解题方法。

与 35 以及 @Jsxts_ 组队,我们成功通过了 THUPC 的初赛,可惜因为省集原因无法参与现场复赛。

我的省选成绩以第 51 名无缘 D 类,但学校依然为我申请到了省队集训名额。24 年的省集是在广大附,广大附的食堂特别厉害,不仅做的菜好吃,还有炸鸡店汉堡店奶茶店,我每天都带一杯茉莉奶绿走,但宿舍却实在一言难尽,好在申请到了走读(?)

这一次省集的题目质量一言难尽,大部分都是搬的神秘题,没有考虑到是否适合 NOI 模拟赛,而我也打得很差,平均两天才能通过一题。

但另一方面平时在学校的模拟赛氛围过于放松,我们还手握管理员权限,可以随时延长时间看数据甚至弃赛,所以这也是一次珍贵的封闭测试机会了。

上了高中后,在出题方面,我反而无法出出那些有新意的题目了,仅仅往联考投了一题 Retribution,还被爆标了,不过这个爆标做法同样很有意思,让这题变得更加适合 OI。

不过即使无法产出题目,我也依旧参与着 JRKSJ 公开赛的举办,单独举办的月赛 \text{Round 8} 以及与 KDOI 出题组 联合举办的 \text{Round 9} 同样带来了许多质量相当高的题目,欢迎大家来品鉴。

这一年,联考集团开始互相到各自的学校进行集训,我们在一月去到了成都七中,见到了冬日的雪花纷飞;四月去到人大附中,欣赏了颐和园的美景湖景;五月去到镇海中学,住了几周舒适的酒店(?)。从自己呆了许久的地方去到别人呆了许久的地方,正是旅游与放松所在。

高二 2024\sim 2025

在机房的日子似乎被按下了加速键,最后一年以超乎预料的速度到来了。

我的 CSP-S2024 与 NOIP2024 发挥出了平均水平,虽然仍有小幅度的得分空间,但数次失败积攒下来的考场策略,也让我把所有应该拿下的题目都通过了。

成为了机房里的最高年级,我们也担负起了联考的出题任务。难度崩坏的联考中,我决定组一场真正符合 NOIP 难度与风格的模拟赛,最后的效果甚至比预想的更好一点,塞的私货还被发现了,满足感↑↑。

WC2025 在绍兴如期举办,作为较高难度的比赛,我很认真地把记录的所有技巧与思路方向复习了一遍。在考场上,由于 Nim 游戏 迟迟没有进展,我再次选择了跳过。结果也再一次证明了考场上适当跳过题目的重要性,仿佛 NOIP2023 重现,第三题 士兵 是一道很简单的线段树优化 DP 题目,而这一次,我没有丢失宝贵的机会。

在通过了士兵后,我仍有许多时间拼第二题的部分分,最终成绩 100+34+100 获得了银牌。能够更进一步的贪心解法暂时是我的思维盲区,这个成绩令我相当满意了。

省选的一个月倒计时随着冬令营结束而开始流动,但训练的日子或缓或急,一如往常。

第一天的考场上,我意识到 追忆 与不久前做过的某道题目十分相似,可是在尝试了仅仅几次之后便放弃了这个思路,转而开始写四毛子,即使写完发现只能通过 44 的部分,但当前的错误思路已经被我刻在了脑中。

无奈之下,我只能依照考场策略做第三题 图排列,幸运的是这道题提供了大量的简单部分分,让我的第一天分数维持在了一个说得过去的 196

可是在第二天的考场上,岁月 再度重演了这一场景——它与前一年的 重塑时光 以及考前做的 主旋律 高度相似,可我只能靠着模糊的印象摸索。即使思路主体乃至容斥系数都推导出来,考试结束的铃声还是无情地宣判了结果。

这一天,三月二号的晚上,我不断地聊天刷视频,试图逃避事实——三道题目的机会,可我全部都没有把握住。在这样的结局面前,连眼泪都没有流出来的机会。

Not yet for the story on the last page, it's not the end.

峰回路转,命运跟我开了个玩笑,打开了那一扇窗——位于省队外第三名的我,因为冬令营的较好发挥成功申请到了 C 类名额。

生涯余额的再次补充,同样是那样的美好——2025 广东省集带来的超高质量模拟赛,THUPC 的初次线下参赛,以及去往其它的城市集训时看到的美丽景色。

NOI2025 的事已不必再说,我成功了,在最重要的一场考试中燃放出最完美的一场烟火。

抓住和抓不住的照片 哪张更美

五年很短,五小时很长。

成功来的是那么突兀,一周前 UNR 的绝望哭泣,夜里不止的辗转反侧,在一瞬间被裁剪、折叠、蜷曲,揉捻成远处模糊的光点。

前一刻还在讨论暑假如何追文化课进度,转眼间话题就变为了今后的打算。

台上的表演者尽情地舞蹈着,台下的荧光棒与狐面被高高举起,欢笑声与啜泣声一同藏在夜幕中。

一时恍惚,一切,是不是有些太快了?

于是我逃走了。没有选择立刻读预科,而是在八月份就返回学校,逃回日复一日的「日常」之中。

借口是准备一些集训队任务,顺便学习衔接一些大学知识。可借口终究是借口,就在几个月后的 NOIP2025 中,长期没有正经参与训练的我在 清仓甩卖 调试超过一小时无果,获得了惊人的 100+24+76+65 分。THUPC2026 初赛中,一整场对着过了百队的题目一筹莫展。文化课方面更不用说,几乎没有任何的进展,除了初中的同学和舍友,我几乎叫不出几个同学的名字。

一个人在家中的「放松」同样没有想象中的舒适。夜晚突然降临的安静在不经意的一瞬间淹没世界,浪费时间的指责、未来的迷雾、任务死线的逼近无一打算放过坠入其中的迷茫者。

时钟,始终一分一秒地前进。

一周前,我来到这间陪伴了我无数日夜的机房,最后一次收拾自己的东西。

昔日摆着电脑、书本、画满树与图的一整沓草稿纸的桌面空无一物,仿佛我从未来过。

拍下永远流淌着的泉水,拍下抢先盛开的花朵,拍下林荫中的小校道,拍下渐渐冷落的体育馆。

漫步在空荡荡的校园中,泪水终究还是止不住地流了出来。

校门口的刻字巨石不知道什么时候变成了工整的磨制花岗岩,高耸的钟塔俯视着整片大地,见证着一次次的相遇与离别。

去过和没去过的地方 哪里更远

总会想,留下些痕迹的啊.....

从曾经唯一捕获探究的灵感之中找到了一道题目投向集训队互测,可当我把它展示给 35 之后,却得到了 zky 早已研究过且得到了更优做法的结果。

为学校准备的模拟赛迟迟没有进展,直到最后两周才仓促用改编题与原题完成。

寻找可能的讲课题目,却发现基本没有做过模拟赛以及好题分享意外的多少题目,靠出题组的题目才勉勉强强凑齐。

集训队论文,由于互测题被拒绝无法直接展开讲其中的算法,而其它稍稍能拿得出手的也只是非原创且早已公开的集合划分容斥与低秩矩阵分解。截止后,我果然反悔了——非原创又怎么样呢,Top Tree 和等价类分治不也被翻来覆去地写吗....

在一个无比焦虑的夜晚,我被家长拉着出去散步,晚风拂过,我这才突然意识到,仅仅是简单的散心,自己也已很久没有做过了。

无论已经攀登到何处,人们总会向往未曾到访过的更高处,而忽视「普通与理所当然」的来时路。那个站在山脚,好奇地向上仰望的小朋友,不会想到自己能够在这一条崎岖山路上走了六年之久,去到了做梦都不敢想的舞台。就连一年前的自己,也绝对不可能理解现在的这些烦恼,只会当成是「胜利者的余裕」。

没做到的事有很多很多——提交集训队互测题目没有通过,集训队论文没有写,文艺汇演从未上台,人际关系不敢接触....

可做到了的事情也有许多呀,我成功了,没有辜负这数年的努力与来之不易的机会,甚至还在 CTT2025 中取得了 25 名,一路走到了国家队选拔的考场中,参与了 CNOI 的所有考试。

尽管最终仍位列倒数,但我也并不被谁、亦或是自己,要求做到第一名——我来过,这就够了。

人若思念便思念 终会相见

与 35 一同走出报告厅,我还沉浸在文艺汇演的氛围之中。

我谈起蜂鸟,这似乎是一首在 OI 圈中曾十分有名的歌曲,可我们仅仅参加过近三年的文艺汇演,无从得知这首歌的历史渊源。

我突然意识到,自己似乎处在一个断层之中——未曾真正经历过那个时代,用着被往届选手看不起的洛谷,却也无法融入新时代的表达之中,不知是否还会有人接唱膜你抄。

幸好,我遇到了你们。

感谢 @critnos,@Terac,@iorit,@Jsxts_,@Pengggi,以及 2023 届初三九班的同学们,感谢你们数年来的陪伴与共同的拼搏,让这段时光染上了灿烂的底色。

感谢 @EDqwq,@oceeff,@fjy666,是你们让我能够分享欢笑、倾诉悲伤,那每一次的秒回都没来由地让我感到一阵温暖。

感谢我的父母,没有你们那无条件的相信,风雨无阻的支持,在我紧张、疲惫之时的包容与激励,我绝对不可能放手一搏,走到现在。

感谢陈运豪老师、张海强老师、林盛华教练以及广州市第二中学,带领我进入这个世界,并提供了如此丰富高质量的训练资源与体系。

感谢这一路上遇到的每一位同行者,感谢看到这里的你,你们也一定能够点燃自己的目标,站在属于自己的最顶峰。

终会再相见的。

2020.7.27 ~ 2026.2.11