专栏文章

生涯回忆(更新到初三)

个人记录参与者 8已保存评论 8

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
8 条
当前快照
1 份
快照标识符
@mio0hyan
此快照首次捕获于
2025/12/02 11:21
3 个月前
此快照最后确认于
2025/12/02 11:21
3 个月前
查看原文

生涯回忆

其实好像退役了会写一篇特别长的生涯回忆的人并不多,不过感觉还是写一下能更好地标记 OI 生涯的结束,新生活的开始。
我初中同学经常说看不懂我发的话,我学弟经常说我写的东西全是语病还像是语音转文字的。想想我初中语文课作文总是不认真写,高中又没上过语文课,好像只有小学作文水平,其实也挺合理的。总之,请谅解我可能太过低下的语言表达能力。
格式当然要按照 ix35 的来写,那就是先回忆一下 17 年到现在与 OI 有关的回忆,里面再参杂一些经验和观点。
shz 的生涯回忆 有提到我。

开始

先放一张令人难绷的图片。
看到这张图时,我第一反应是 “学过 Scratch 也算小码王学员吗”,因为我只能立刻想起我确实在小码王学过 Scratch,经典没什么用的少儿编程。后来又仔细想想才发现,我还真是在小码王的教室写下了第一行 c++ 代码 —— 17 年的暑假我将要升上五年级,出于忘掉了的原因(也许是因为家长觉得我对他们的 Scratch 课挺满意的)家长给我报了小码王刚开始开设的 c++ 课程。我已经忘记了当时给我上课的老师是谁,也许是机构老板不知从哪里找来的曾经有算法竞赛经历的刚毕业的大学生,但好像确实是老师向我们推荐了洛谷——于是我在 2017.7.16 注册了我的洛谷账号,洛谷也成为了我知道的第一个 OJ。
我对那个课程还有一些依稀的印象:比如一开始我拼劲全力无法理解为什么可以嵌套两个 for 循环;以及不知道为什么某节课在介绍什么 fstream 但我至今也不知道这个语法怎么用(感觉不如 freopen);还有某节课讲了区间 DP,具体来说讲了一节课怎么做石子合并,但我好像虽然差不多理解了之前讲的线性 DP,却始终没法理解设 dpl,rdp_{l,r} 又是什么意思。
上完这个课我似乎学到了一些东西,但然后小码王就没有进一步的课程了。不过洛谷对当时的我来说实在是非常新奇,试炼场功能好像对我尤其有吸引力。我记得当时试炼场的规则好像是分若干个模块,一些较靠后的模块有一些前置的必须通过的模块才能解锁。一个模块由若干道知识点类似的题目组成,要求通过其中的若干道才视为通过这个模块。这个设计有一些闯关的感觉,于是我在暑假有空的时候便致力于通过最简单的一些模块。
不过一件有些幽默的事情是,我那个暑假通过的相当一部分题目的代码似乎是从讨论区复制来的,其实哪些是复制来的倒也相当明显:那个课当时只教了 cin,cout,然而我交的有些代码却用的是 scanf,printf;另外那个老师的码风是大括号不换行也不空格,我后来也一直这样写(少打一个字符节约很多时间有没有懂的),然而当时交的一些代码显然不是这样。我倒也不知道是因为当时年纪太小不懂事,还是学的(或者教的)实在太烂基础语法题也自己写不出来。
总之,这个课一共好像也只上了十节,除了讲了点基础语法之外好像只教了线性 DP、区间 DP、基础排序算法、二分就结束了,而且也难说我到底听懂了多少。事实上我上初中前大多数 OI 知识也不是从这里学到的,也难怪我一时想不起来还有这回事。

上初中前

可以稍微介绍一下时代背景,17 年之前杭城的各种小学生基本都在卷所谓奥数,逻辑大概就是在各种培训机构,比如学而思上课,然后去考当时非常火爆的希望杯等等杯赛,收益是当时杭城的初中有自主招生,而学校比较看这些杯赛的成绩。然后就在差不多 17 年这个时间点,奥数被叫停了,具体来说就是这些比赛都被要求停办了,再往后的故事或许就是各种少儿编程机构的崛起(当然这和奥数逻辑其实没有任何区别)。
总之,在这样的时代背景下,HDU 的 XCPC 教练刘老师决定开一个教算法竞赛的机构,由他本人以及他的学生(最厉害的当然是 claris)来授课。我父亲毕业于 HDU,他第一时间打听到了这个消息,于是 18 年初(我倾向于是,但也有可能是 17 年秋天就开始了)我开始上刘老师的课。
这个课的靠谱程度就上升许多了——起码 HDU 每年区域赛能进前十,来授课的老师总还是挺懂算法竞赛的,尤其是当时还有 claris 这样的高手,虽然我记得一开始不是他教。在上初中前,我在这个课学到了 BFS、DFS、并查集、树形 DP、最短路、树状数组等算法,还有若干内容学了但是没学明白,不过也算是真正入门了。印象里好像还带着参加了 HDU 某届新生赛,我也忘了我过了几个题了,只记得有个我不会做的题要用线段树。
我还是这个班里年纪最小的学生——刚开课的时候,剩下的人都是六年级,但我是五年级。事后来看,我早在那个时候就应该认识 yjjyzc,两位我在 HEZ 的学长,但事实并非如此——可能是因为我那个时候性格就比较自闭,又或者是因为一些别的原因,总之虽然我和 yjjyzc 在一个班里上了很久的课,我却完全没有当时和他们说过话的印象。我还记得有个题的题目名里就有 yzc,好像是个线段树模板题,但我当时好像没学会懒标记。
这个课应该用的是 HDU OJ,但我又记得后来提交界面好像变得不太一样了,可能是搭了个别的 OJ。我当然也在洛谷上做题,印象里当时天天写高精度的题目,具体来说就是写一个板子然后一直复制水通过数。毕竟是小朋友,当时通过洛谷的绿题或者蓝题就很开心,而高精度题好像又都评在这个难度。
但事实上好像我这段时间忙着在做的事情并非学 OI,而是准备小升初的自主招生考试。白马湖是一所和 HEZ 关联很大的新办的民办初中,我小学五年级升六年级的暑假刚好有第一批毕业生,中考成绩比较好。当时杭州的 OI 教育当然不如现在普及,而白马湖当时是明确有信奥队的,于是家长觉得白马湖是一个比较好的选择。文渊则声称可以给一部分自主招生考的比较好的人发约直升文渊高中部,然后又尽力给文渊高中部和学军西溪划上等号,当然去文渊也可以搞 OI,于是家长觉得文渊也不错。不过当时公认杭州最好的民办初中是文澜和建兰,家长其实还是最希望我考这两所初中,毕竟当时也不将 OI 作为一个重要的选项考虑。
然而幽默的是,即使我已经尽力准备自主招生考试(上了一些针对的培训班),最终的结果只能说比较搞笑:文渊第一轮就被刷掉了,文澜和建兰好像进入了稍靠后的阶段但最终也还是以失败告终,而白马湖考了三次笔试两次跑步才终于通过。事后想想,好像考进去的大部分人(以及我们这届大多数的杭州比较牛的 OIer)都在小学上了学而思班,还是所谓星队的,而自主招生考试的内容和学而思教的所谓小学奥数重合度是很大的。但我小学好像根本没怎么学这些东西,只在少年宫上了某个奥数课,那当然就在自主招生考试考不过别人了。
现在想想,如果当时真的考上了文渊文澜建兰中的某个,现在又会是如何呢?令人感慨。

初一/19-20赛季

初一的主题是小朋友洛谷奇遇记。
升初一的暑假我就参加了白马湖的 OI 集训,认识了白马湖的 OI 教练郭老师。当时白马湖 OI 集训似乎是按照初一初二分开训练,初三要中考了所以就不集中组织训练了。当然我后来才知道其实还有隐藏逻辑:水平足够高的选手会被 HEZ 的教练 LJ 拉到 HEZ 那边训练,然后就与白马湖的 OI 集训独立了。当时 LJ 好像每周三会来白马湖讲课,但他初一似乎对我也没什么印象。
当时对初一学生默认是零基础的,我总还是有一些基础再加上在模拟赛考出了比较好的成绩于是被分到和初二学生一起训练。同样和初二学生一起训练的还有 5ab、zbshzytrzgjx(也许还有,但我没印象了),我当时和 zbstrz 最熟;初二的 yjp 很活跃,于是我也认识了他。如果开天眼的话,此时在白马湖的我后来认识的人还有初二的 wn 和初三的 xay,但我的社交水平不算高超,wn 当时应该不算活跃,于是我当时并不认识他。而 xay 此时初三早就停课在 HEZ 集训了,我当然没道理认识他。
暑假到 CSP 前的日程就是每天听课和打模拟赛,好像当时还有初赛集训,不过我、zbstrz 当时最关心的事是能否在洛谷上出一场公开赛,于是我们建了个 团队。现在还可以从这里找到几个当时我出的神秘题,基本上全是垃圾数据结构,这个这个 大概是造了数据的中最魔怔的,题面是这样的:
前一个题好像是至多 2×1052 \times 10^5 次操作;后一个题是 k15,i=1kmxi107k \le 15,\prod\limits_{i=1}^k mx_i \le 10^7,操作 3×1053 \times 10^5 次。然后前一个题的 std 写的是离散化以后对 m×m(m=1000)m \times m(m=1000) 的矩形两维都分块最后得到一个单次操作 m×m=Θ(m)\sqrt m \times \sqrt m=\Theta(m) 的优质算法,只能说小朋友就是有创造力;后一个题的 std 写的是对树状数组套 kk 层,但估计复杂度卡满是退化为暴力的。感觉两个题很好地展示了我当时的魔怔劲。
暑假白马湖的学长 memset0 和 mwh 回来讲过一次课,内容是 KMP 和 Manacher,我学会了 Manacher 以及求出 fail 数组以后怎么做匹配,但好像只会用定义三方求 fail。
然后就 CSP 了,那年我顺利通过了 J 组和 S 组的初赛。J 组我顺利想出了 A,B,D 怎么做,C 好像只会一个三次方的做法,于是获得了 100+100+70+100=370 分,倒是拿到了一等奖。S 组 day1 好像比较快地通过 A 格雷码后 B 括号树一直只会平方做法,最后尝试写 C 的 Θ(n!)\Theta(n!) 暴力也没写对;day2 A 写了 Θ(nm+2)\Theta(n^{m+2}) ,B 倒是猜对了一个重要性质(虽然好像真相是我直接把两个东西混淆了,但这刚好是正确的结论)写了个 Θ(n2)\Theta(n^2) DP,然后自以为加上了决策单调性优化,C 我好像写了半天暴力都没写对,但觉得特殊性质的答案是固定的于是直接提交了样例觉得可以获得 28 分。最终 S 组获得 95+50+0+32+64+0=246 分,获得二等奖。
这个成绩现在来看只能说非常幽默,不过好像当时杭州初一选手都没有几个通过 S 组初赛的,我记得这个成绩算是挺领先的,还因此认证获得了洛谷的蓝勾,非常开心。当时我很以刷咕值、在洛谷的公开赛取得好成绩以及在洛谷上举办公开赛为荣(在洛谷上发 题解 当然也是刷估值的必要手段)。还可以从当时写的博客找到记录:
然后众所周知地就疫情了,开始上网课后我有了更多时间水洛谷。时间走到 2020.3.14,在几次被审核打回后我终于在这一天举行了我在洛谷上第一场(也是最后一场)个人公开赛,非常开心。事后来看,出的三个题分别是线段树模板题、KMP+Manacher 模板题(回文匹配)、随便做一下的数据结构题。上高中后 shz 天天用回文匹配诋毁我, 但确实这太模板了,完全不是题。不过似乎因为它足够模板,似乎被选入了一些基础字符串的练习题单里,现在回文匹配已经 2k 通过了,非常幽默。
接下来的故事则更为奇幻,事实是我在小学时就入坑了东方(虽然后来不怎么关注了),原因主要是我觉得 stg 很好玩,我在小学就打通了永夜抄的 L 难度。对现在的选手来说洛谷还有灌水区的年代恐怕就足够久远了,但一些必要的背景故事发生在 18 年 7 月,事实上这个时候我也没开始水洛谷,不过故事大概是一个叫 9baka 的人发了个 洛谷文文新闻 的帖子,大概就是以新闻的形式发一些洛谷社区发生的事或者一些算法相关内容,然后结合一些东方的人物故事之类的。不过天下没有不散的宴席,在热情散去后当然这个帖子也就不再更新、无人关注了。时间走到 20 年 3 月,就在我那场个人公开赛前后,大概是疫情上网课大家都没事情干,一些人组织重启了这个项目,并创建了 洛谷文文新闻 2.0 的团队,作为水洛谷高手加(至少当时是)东方众,我也加入了这个团队围观。
故事的重点并非 “文文新闻 2.0”,所以不必介绍我认识了这个团队中的哪些人,事实上除了后来的 Wdoi 的成员之外我也不记得当时认识哪些人了。接下来,毕竟会加入这种团队的都是某种意义上的小朋友,大家当然也热衷于出题。契机是 小波(还有一些其他人,恕我忘记了)以团队的名义举行了一场邀请赛(现在我找不到那场邀请赛的题目了),然后小波发了一个 帖子 表示可以加强某一题的数据。我当时热衷于出题,于是进行了积极的讨论。最终话题走向可以建一个出题组,随后 Wdoi 出题组诞生了,也建了相应的 QQ 群,我记得我还是因此注册的 QQ。
最初活跃在团队中的人有 小波NaOH_frogJVLeasierSeptKHIN(一开始不是这个 id),他们相对活跃了比较长的时间;一开始比较活跃但之后不怎么在群里说话的有 ysjUM美九莉莉白4526_MatKave。当时群里水平最高的应该是 ysj 和铃,ysj 是 19 年的银牌而铃是 20 年的集训队。ysj 比我高五届,因此他其实 2020 年 6 月就要高考了,但不知道为什么在 5 月他仍然积极参与出题;铃是参加了我们出的第一场比赛后加入团队的。
我们明确目标:要在洛谷上出 rated 比赛!于是大家开始往团队里面投题,然后给管理审核。不出意外一堆题被评价为质量太差,被毙了。但造完的题不能浪费,于是就又建了个 Wdsr 出题组,在 2020.4.6 举办了 Wdsr-1,我在里面又出了个 线段树模板题。2020.5.4 又办了 Wdoi-1,我出了个 魔怔题。这场比赛后三个题都是 ysj 出的比较套路的题目,以现在的视角来看确实没啥意思,因此最后这场比赛还是没 rated,大家比较失落。
在 2020.8.1 又举办了 Wdsr-2,我没出题不过写了 B 题的标程。但这场比赛好像撞了当时的什么活动,于是基本没人参赛,其实题目质量好像还行。
团队里当时还用 囧仙 这个号作为公用号,虽然现在要问用公共号有什么意义我也只能说不知道!其实还有对应的 CF 版本,当然现在大家可能都觉得这就是我的 CF 账号,不过这个号前两场比赛其实是小波打的(多人共号,该举报了。),后来小波也不用了,21 年暑假我想到要开始打 CF 就随便捡了这个没人用的号开始用。
暑假还发生了一些其他的事情,比如我报名参加了举行于 2020 年暑假的 WC2020,但这场比赛对当时的我来说实在是太难了!最终我写了三题暴力并获得了我的第一块 WC 铜牌。另一件事是我在出去旅游坐车无聊时编出了 P8539 的题意以及一个比较麻烦的做法,不过这道题面世是两年以后的事了。
白马湖寒暑假的集训有些会在 HEZ 办,但我只在小学升初中的那个暑假参加过,初一寒假的集训由于疫情当然是没有进行。然后我就将这件事忘了,也没有任何人提醒我。我至今还记得一段十分幽默的对话:在某个时候郭老师问我为什么没有参加寒暑假的集训,然后我十分惊讶地表示原来还有集训?等我下一次去 HEZ,已经是初二升初三的暑假的事了。
初一也有继续在刘老师那边上课,但很多内容我其实没太听懂。那个班开到我初一时就算结束了,考虑到我学的不太好,初二似乎又换了个后来开的班把最后一部分内容又重新学了一些,后来去 HEZ 集训后也就不上了,这部分的记忆实在不太真切了。

初二/20-21赛季

初二的主题一半是出题记,另一半是虚假繁荣。
办完 Wdsr-2 后大家好像就有些失去了出题的热情,不过群里还是挺热闹的。办的下一场比赛要等到 2021.4.5 的 Wdsr-2.5,于是出题记暂且不表。
初二时我的训练方式非常魔怔,我当时特别喜欢数据结构(其实在此之前也一样)。于是除了打一些洛谷比赛之外,我自己做的题基本上都是数据结构题。这样训练的结果是,我在初二结束时就已经知道 70% Ynoi 题做法是什么(虽然写了代码的很少),但与此同时我甚至没做过超过 20 道 CF 题。这种训练方式当然是不合理的,不过我意识到这一点还要等到 CSP21 之后。
目光回到 20 年,CSP20 仍然是一个欢乐的故事:A 儒略日当时让很多选手患上了玉玉症,不过我一下就写对了代码;B 是个简单题,我也一下就会做了;C 对当时的我来说有点难,但我多做了会还是做出来了;D 我做了一会发现可以转化为 Θ(n)\Theta(n) 次插入删除维护最大最小值,我知道可以用平衡树维护这个操作,但我当时并不会,于是我写了 Θ(n2)\Theta(n^2) 代码下班了。最后出分 B 没判 2642^{64} 挂了 5 分,C 有个地方漏取模了挂了 20 分,最终 100+95+80+55=330。出场发现初二只有 Qiuly 340 比我高(虽然我当时不认识 Qiuly),而且不挂分就是我最高了,于是我非常开心。
NOIP20 我当时则自认为中规中矩:我很快认为通过了 A 并写对了 B 的 Θ(nlogn+nc)\Theta(n \log n+nc) 做法( c=26c=26),随后我做了 1.5h 构造题 C 但毫无进展,于是我花 0.5h 写完了 D 的 30 分暴力,最后我又一直做 C,写对了一个 O(n2m)O(n^2m) 步的正确构造,却因为常数太差只能通过 40 分。比赛结束时我预估 100+100+40+30,但实际上 A 分数的分子分母会爆 ll 于是我挂了 10 分,B 我多测清空错误+本来复杂度太高也过不去于是只得了 60 分,最终 90+60+40+35=225。比赛之外的事情是那年浙江省(至少杭州市)初中生参加 NOIP 的规则是纯粹的黑幕,据我了解的结果是白马湖的学生和文渊的学生都去了,而其他一些初中的选手,比如 shz 而没去。总之我并不知道别人打得怎么样,也没有什么感觉。
然后就是省选,这是一场在当时给予我更多信心(或者说狂妄)的比赛。我在 Day1 的表现其实比较一般,虽然我很快通过了较为套路的 A 卡牌游戏,但在比较需要思维的 B 矩阵游戏思考了很久仍然只会 30 分,而 C 图函数则是只读了一遍题并写了最简单的 16 分暴力。Day2 是一场极为顺利的比赛,我在 A 宝石和 B 滚榜上都思考了一会就想出了正解,并最终分别花费约 1.5h 通过了这两道题目,最后 1.5h 我自认为拼出了 C 支配的 45 分暴力。我还记得我 Day2 出考场时我志得意满的心情,畅想着我是不是要进省队了。查分时发现 D2C 挂了 15 分,最终 Day1 100+30+16=146,Day2 100+100+30=230。
进省队是假的,不过成绩确实不错,加上 NOIP 之后我总分在浙江排 53(题外话是这是浙江最后一次公示省队名单时包含省队外的人的分数),且又是同届最高,一切看上去都充满了希望。
出题方面也同样看上去充满希望。2021.4.5 举办了 Wdsr-2.5 是所谓的 “普及组模拟赛”,这场比赛主要是小波准备的,当然大家都来积极验题了。比赛的结果一如既往地是没有多少人参赛,部分原因当然是因为 unrated,不过主要原因恐怕是这比赛使用了 OI 赛制……
但这场比赛确实带来了转机,这场比赛挂上洛谷比赛界面后 八云蓝 询问是否能加入团队,一番拉扯后倒也是顺利加入了。印象里 蓝 一加入团队就立刻往团队里加了差不多 10 个题,基本都是数据结构,其中就有 八云蓝自动机 I。当时我作为数据结构魔怔人当然很愿意做这种题,想了很久得到了一个看上去比较牛的做法,并且也能比原题意做得更强一些,于是就有了 八云蓝自动机 II,在接下来的一段时间里我认为这是我出过最好的题。
这道题最终与一些别的我出的垃圾数据结构题和两道蓝出的题一同在 Wdsr-2.7 面世,这场比赛由五道数据结构题组成,非常魔怔。不过一如既往地参赛人数寥寥,所幸除了 八云蓝自动机 II 之外的题目都有人通过。
出题组未竟的梦想是在洛谷上出一场 rated 比赛,这最终在 2021.8.18 的 WR3 实现(WR2 的标号被跳过了)。这场比赛的所有题都是蓝在加入出题组之后出的,展现了蓝非凡的出题水平。我负责的工作大概是验了几乎所有题并提出了 B 的部分做法、略微简化了 D 的标算,虽然 B 的数据造烂了导致随便乱搞都能过。我还记得一些关于这场比赛的幽默往事,比如唯一 AK 这场比赛的 wxw 其实当时和我身处同一机房,但我认不出到底谁是 wxw;另一件事是比克虽然写了 D 的 1log 做法但是常数太大被卡成了傻子,赛后在某个地方怒喷比赛啥比,但事实是 wxw 写的 2log 过了。
在暑假将近结束的 2021.8.28 我们还在牛客承办了 提高组模拟赛,我出了其中的 C,当然又是数据结构题,不过这题倒没那么垃圾,现在来看也还算令人满意。
初二还参加了三场不太重要的比赛。第一场是 PKUSC2021,好像 PKUSC2021 是 5h 的,后来就改 4h 了。Day1 我花了 1h 通过了 A;然后做了 2h B,思考正解但不会做然后写了个 sub2 获得了 46 分;然后我开始写大模拟 C (德州扑克),但我当时根本没听说过德扑,于是写得很费劲,最后一直 WA 到比赛结束喜提 0 分。Day2 我做了几乎一整场 A 并在还剩 1h 时通过了;中途也思考过一段时间 B,但只会最简单的 11 分暴力;C 实数概率题则根本没做。最后 100+46+0+100+11+0 但因为年纪小还是拿到了优异(不过那个时候一等约好像已经作废了)。
第二场是 APIO2021。不过现在谈起 APIO2021,我会最先想起我在 Itst 的讲课学会了决策单调性的分治和二分队列做法,在另一个人的 open cup 趣题选讲听到了 Cactus Competition 的做法。比赛内容倒是没多少意思,大致就是我对着这场最简单的 C 题编了一个神秘的根号做法,交上去发现 TLE 了于是加了一堆乱搞(倒也确实会变快,其实写得对一点可以就是正解)最后通过了 C。接下来在比较需要性质分析的 B 题想了想不会做就随便交了个 8 分代码下班了。A 题是六边形方格,相信没有人会愿意做的。这场 APIO 出现了著名的 “APIO 赛制”,具体就是评测队列越来越长,然后到某个时刻突然宣布改 OI 赛制然后下发大样例了,非常幽默(也有可能是没宣布改,但总之某个时刻开始就不能在比赛结束前看到比赛结果了),不过我下班的很早所以没受影响。此外,C 好像还是 CF 原题 CF1119F,不过我之前没做过。
第三场是 ISIJ2021。由于中国现在已经不再参加 ISIJ 了,这里稍微介绍一下:ISIJ 大概是限定初中生参加的 IOI,包含的所有比赛也都是 IOI 赛制的,虽然实际上办得失败很多。ISIJ 有很多环节,正式开始前会举行一些训练赛,正式开始后有数学赛、组队赛以及最重要的马拉松赛。但实际体验是训练赛基本全是经典原题,大家都很快 AK 下班了;数学赛每个题只能交 5 次,印象里题目好像也都不难,但我总之拿了银牌;组队赛也基本全是原题,我被分配到了 IOI 的典题 aliens,但结果是我连暴力 DP 都一直写不对,最终获得了 eps 分;马拉松赛三个题我只会做一道,会做的那道还写挂了不知道为什么一直 WA,不过这个比赛不绑包所以还是得到了一些分,剩下两个题拼了点暴力和乱搞,最终卡线获得了马拉松赛的金牌。马拉松赛最幽默的一点在于虽然它的题有部分分,但题面里并不会写部分分具体的限制是什么,需要自己猜(和 PA 一样)。
初二时我训练的地点也发生了一些变化。省选过后,LJ 看我这次考得很牛于是让我之后到 HEZ 的小机房训练,在那里我遇到了此前就认识的 5ab、zbs,以及此前不认识的和我同届的 shz,暑假里我们组队打了 HDU 多校(确实是四个人)。除了我之外 5ab、zbsshz 都是一开始就跟着 LJ 学的,之前也一直在 HEZ 的大机房训练(大机房主要是给小朋友训练的),现在转到了小机房。小机房当时还有很多学长(后来我知道其实还有当时来杭二训练的管老师),但我当时性格比较自闭,只和同届的这几个人来往,于是当时都完全不认识。
不管怎么说,我初二的 OI 生涯还是挺开心的,首先是比赛的成绩不错,另外也在洛谷上举办了一些比赛,在 Wdoi 认识了一些厉害的人,会这样一直顺利下去吗?
……当然不是了。

初三/21-22赛季

初三的主题是抑郁症与其中的转机。
如果你读得足够仔细的话,会发现我前面根本没提到我如何在 CF/AT 上训练,这是因为初三前我确实根本不做 CF/AT 的题或比赛,我的训练平台只有洛谷。到 HEZ 的小机房训练后,我发现大家(也许主要是 5ab 和 shz)会经常讨论 CF 的题目或是之前的比赛打得怎么样,在这种氛围下我也开始用 JoesSR 这个号打比赛(前面也提到过了)。
因为这是个二手号,在我开始打之前就有 1621 的 rating 了(或许这里还可以解释一下,在比较久远年代注册的号,rating 是从 1500 开始的而非 0),我打了两场 div2 各上了 200 多分,快上橙名了,觉得自己很牛。然后在下一场 div2 被 一个有点思维的题 俘虏了,在 div2 喜提了 367 名下了一点分,但这无伤大雅。
CSP21-S 的初赛卷似乎挺难,当然更大的因素是我做得不好,总之我只得了 69.5 分算是勉强通过了初赛线。但初赛嘛,当然是过了就行,多少分又有什么所谓呢?
然后那一天就到来了。让我们忽略过程,结果是我 CSP20-S 得了 330 分是浙江省初二最高分,而 CSP21-S 喜提 124 分获得 CSP-S 二等奖。我仍然残存一些那一天出考场时的印象:似乎天色尤其地黑,家长问我考得如何我说应该一百多分,然后家长倒是表现得挺平静地说那今年要拿二等奖了。当时我的心情说实话我现在倒是完全不记得了,不过也许我回忆任何事情都只能想起事实,而难以唤起当时的情绪。
但忽略过程当然就不能解释为什么会这样,事实是我在 CSP21-S 只是单纯什么都不会做。CSP21-S 的 B 是一个括号序列 DP 的变种,C 是一个思维题,D 暴力是建模跑最小割,遗憾的是我当时对这三个东西都非常缺乏了解。于是我在比较快速地通过 A 之后坐牢了 3h,中间试图写了 C 的 Θ(n2)\Theta(n^2) 暴力并通过了大样例,然而最后 FST 了获得了 100+0+24+0 的好成绩。
随后就是抑郁症,5ab 这场比赛通过了前三题获得了 300 分,shz 好像没通过 C 但写对了 D 的暴力也获得了 288 分。抑郁症是逐渐加重的,CSP 之后是 NOIP,21 年底当然有若干疫情防控的要求,于是浙江初中生参加 NOIP 需要在 CSP 达到划定的分数线,差不多就是 CSP-S 浙江一等奖的分数线,于是我差一点去不了。我仍然记得当时知道我的一个平时成绩远不如我的初中同学写了一堆乱搞/爆搜刚好获得一等奖从而能去 NOIP 时的错愕。
(这一段内容因为有些敏感被删去了。)
在 HEZ 机房的训练,尤其是模拟赛,也会加重这种抑郁症。当时模拟赛的题全都是高我一届或是两届的学长(也许三届的也有,但我不认识)在搬,而他们搬的题都非常变态。用 wwc 的话说,“NOIP 模拟赛就是 NOI 模拟赛往前面加一个签到题”,NOIP 模拟赛去掉第一个题,基本上就全是 open cup 的没人过的题,或者 CF *3500,或者 UR 没人过的题。那时候我还没有要好好保存模拟赛题的意识,但我现在能找到的一套 NOIP 模拟赛的题(yjj 搬的)里 UOJ177 是 A,而倒也不是难度乱序排序的问题,因为剩下的题也差不多难。另一套能找到的题里,NOIP 模拟赛的 B 是用特征多项式加速矩阵快速幂,可以想象这些题目给我幼小的心灵带来了多大的震撼。
但抑郁症之中,倒也并非没有转机。无论是当时在 CF 上做题或是极其抑郁症的模拟赛,都让我看到了真正正确的更难的题目的样子:复杂的性质分析/转化,巧妙的观察,而非只是代码的堆砌或是困难模板的套用。我还记得初三时,我会在睡前想之前记住的题意直到坠入梦乡,然后等到回家时或是晚自习写完作业去机房时试着实现想到的做法。我还记得当时独立做出 CF1384F 或是 CF1118F2 这样比较难又比较巧妙的题目时的雀跃。也正是在这一年我尝试解决 CF1383E,想了好几个晚上终于想出了一个看上去很对的做法,开始写代码时却发现怎么样也过不了样例,仔细一看才发现题读错了,在很久以后,这道读错的题成为了 CF2048H。
客观来说,初三我花在 OI 上的时间仍然是非常有限的,也并没有做多少题,这也是受当时政策的影响——我们这一届是取消科技特长生保送这一升高中途径的第一届,我的学长们只要达到 CSP-S 一等奖(更往前是 NOIP 一等奖)的硬性要求,再有学校愿意要你(这看 LJ),就可以免受中考的烦恼,也有可能是只要考到一个很低的分数,但总之差不多。但到我们这一届,一切都变了,杭州有像样的 OI 集训的高中只有 HEZ 和学军,而且当然只有分数线最高的本部有集训,这传达了一个诡异的信号——如果你想搞 OI,你得先文化课好到能考上杭州最好的两所高中。
当然现在我已经知道,其实在弱校也未必就一定不能学 OI,无非是跑到 nfls/号家军罢了,但当时我实在算不上消息灵通。另一个角度说,取消科技特长生当然是上有政策,下有对策,因此 HEZ 也在这年推出了所谓首创班:即在分数线低很多的东河校区开一个特别的班,并找一批事先觉得比较有潜力的学生承诺说只要你愿意只报 HEZ 本部和东河,我可以保证你去东河被分到这个特别的班,且这个特别的班视作和本部是完全一样的,由本部的老师过来授课,并且排名也和本部一起排。所以如果你想学 OI,直接考虑去首创班就可以了。但我和家长听说首创班的事,也是初三非常临近中考的时候了。
最后一个原因是,当时来看 OI 也并非必需。我初中的文化课成绩其实还不错,当时白马湖根据前几届的成绩预测说大概前三所 HEZ、学军、杭高各能上 30 人,而根据某个平均方式(下文会解释),我初中的平均排名是大约 20 名。初三当时还有 xjtu 的少年班来招生,我当时犹豫要不要去考,因为这相当于可以直接保送 xjtu,而 xjtu 无论如何也算是所谓 C9。但家长和我说西安太偏了,而且家长觉得我可以去更好的学校,最后我听从家长的建议只去了所谓的校内初试(即选拔去考 xjtu 的人,因为一个学校只能派比较少的人去,而报名的人太多了),校内初试主要是数学和物理题,我记得这次我考的排名甚至比一些最终选上 xjtu 少年班的人排名还高。前文提到的 zbstrz 和我的一个关系挺好但不学 OI 的朋友去 xjtu 少年班了。总之,当时无论是身边的家长、朋友还是老师都和我说,只凭文化课(或者加上 NOIP 一等奖去强基)我应该也能去 ZJU。
总之由于以上原因,当时觉得无论想干什么,都必须先学好文化课考上 HEZ 本部(家长没联系上学军的人,学军的人也没联系上我们),不然 OI 也没得学,于是初三我主要在学文化课, 22 年 4 月直到中考我甚至基本没做题。

评论

8 条评论,欢迎与作者交流。

正在加载评论...