(迟到一年的退役记)
2019.5 初稿,2020.7-2020.8 修订 V2.
零
故事从哪里开始呢?
小学的故事还是得讲两句,虽然在当时看来十分光鲜,但是回头看看也就那样。具体来说,也就是看看杂志,抄抄 VB 代码(还搞出来了个东西),研究研究奇怪的软件,甚至捣鼓捣鼓全家桶。(可能内容类似于现在的信息学选考,所以其实还是挺“先进”的。。。)
故事是从初中开始的。
开学后的某一天(社团招新前几天),广播里通知想参加信息学竞赛的中午去机房开会。然而我却忘了。。。问了一下班里去了的同学,说是下午放学后去参加摸底考试。于是下午我没有忘记。
关于考试,其它题我已经忘了(似乎和初赛比较相似),只记得最后一题是计算 Ackerman 函数。。。然后当时手动暴力展开算了半天。。。
之后的结果还是进了社团。
由于我们那两届对竞赛的不重视,加上老师本身不是搞这方面的,学习进度很慢。我们花了整整一个学期(似乎还要多)学习 pascal 的语法,剩下的一个学期才讲了为数不多的算法。。。
然后就是一年联赛。初赛凭借着小学积累的一些计算机常识,加上当年卷子简单,考出来 98.5 。。。(其实当年我们都认为进复赛就很好了。。。)
然后就是准备复赛。正巧当年(2015)就是 CCF 说要抽题库那年,于是初复赛之间的一个月我们就开始搞那个题库。。。结果当年 NOIP 两道题库题巨简单,随便写写就写完了,T3 随便写了个暴力发现有 40 分,觉得挺高兴的,然后开始写 T4,写了半天(差不多 2h 吧)写完了,然后测了波大样例,当时还不会任何命令行,于是观察了前面几个数都对的就都没管了,看了一波部分分,发现有 60 分。然后就 300 分开心的离场了。。。
一周后查成绩,发现 100 + 100 + 40 + 0,后来发现(好像)是数组越界了。。。然后差十分省二。。。当时还觉得挺遗憾的(虽然加上 60 就差十分省一。。。)。
接着就是咸鱼的一年(真的咸鱼,我都忘了我干了些啥。。。)。
初二升初三的暑假可以算是一个转折点。
某家长群(就是那个某家学堂并上学某思联赛班家长群)的 wzz 妈听说到了关于这一方面的优惠政策,然后就开始撺掇所有(这个群和社团的交集)的家长在暑假要好好搞一番。
然后就带我们去了一趟 XJ,虽然那次连 xy 都没见到。。。(btw,我的 id - jhdjames37 就是在那时开始有意识地使用的,虽然第一次使用是在注册 baidu 账号时啥名字都被注册之后憋出来的)
然后我们又报名了在 XJ 的一个夏令营。那次夏令营其它课应该就像现在的 CCF 教师培训一样(比如说有朱全民),但是有两天我必须拿出来说一说。因为讲课人就是掌控了未来三年(也许更多?)ZJOI 命运的吉老师。当时他刚毕业,鏼爷在楼下(我们在六楼)备战 IOI。现在看看,除了在最后放了几道 UR/UER 以外,ppt 似乎并没有什么问题。当时吉老师现场展示敲代码,觉得确实厉害(也促使我转 C++)。在上课之余,吉老师给我们描述了那条异常漫长的 OI 之路以及这条路背后的故事:
NOIP -> 省选 -> NOI -> 清华集训 -> WC -> CTSC -> IOI
(当时还没有北大集训)
至于当时的我,一是觉得他讲得挺有趣的,然后就是掉线,另外就是吉老师也是 WL 的。。。
暑假的剩下时间也沉浸在 OI 中,我们经常去十四中的李建江老师哪里上课;通过一些渠道,我们也把吉老师和自信拉了过来给我们讲课。
其实现在还没有进入正题。(然而已经写了无数字了)
开学之后,我们先被拉到了江对面,然后一周之后又被 XJ 抢了过来。最终我们决定在 xy 这里学习。
初赛我依然发挥稳定,AK 进入复赛。这段时间每周六到 xy 那里,早晚见缝插针的做作业。xy 每次都拿出他那“经典”的 DP ppt 给我们讲。NOIP 前一周是期中考试周,周二考完我们就翘课逃到了 XJ,开始做模拟题,也都是一些“经典”题。当时我似乎就经常听到 fls rk1、fls AK 之类的话,也是在那时,我们认识了 lsk。当时对他的印象好像是天天拿 pascal 写 SPFA,也比我们强一个档次。
复赛过程不想讲,除了差点把 T1 题意读错外。复赛成绩和去年一样 100 + 100 + 40 + 0。所幸 CCF 那年放宽名额,然后苟了个省二。然后每天就担心 xy 会不会要我,虽然最后 xy 照单全收(省一的 wzz, zzy,省二的我,还有个省三的 xjz。。。)
然后就常常去 XJ (后来因为 zy 不同意,去得就少了),但是也 get 到了一些东西,比如说听 xy 讲过最近点对,听 xy 说过【关键路径不是最长路】(匈牙利 的故事我似乎没听过),听 xy 扯过 Floyd 的三个 for
;听 wys 来讲座【非传统题】(然而他在若干天之后的 WC 就被 A 了,这是过了很久后才知道的);看过自信表 fls 的 #pragma
,目睹了 ttt 来 XJ;也做了那一套经典题(出纳员的雇佣、双子树等等)。除此之外不去的时间有空时也经常在读 lrj 的入门经典,虽然实践的机会不多,但是也了解了一些东西。当然,也略微目睹了各位学长们是如何开车的。
说着时间来到五月,我因为保送被截,参加了特长生考试。WL 还有 xhk 以及已经弃疗的 zz。当时看着其他人感觉他们玩得挺 high 的,而我除了和 WL 的聊之外,似乎只注意到了最高的 cxt。。。
(根据考古,当时通过特长生考试进来的有 cxt czx wrq yzf czyh fx xhk cmy(曹铭轩,在联赛那会就退竞了,后来出国了)和我~~(现在看看这都内定的结果,因为通过专业测试的人数等于招生人数)~~,至于保送生,来路比较混乱——有夏令营选手也有本来就在的选手,不好整理)
之后一直到中考就无话了。虽然没有去学校,但是还是从家长听到两句话:XJ 新来一个叫 517 的教练;有一个叫 zrf 的很强,甚至 AK 了浙大校赛。
一
这里其实才是真正的开始。
中考之后,本来想休息两三天就去 XJ 的,然后不知道怎么回事,就变成了毕业典礼之后那天。
到 XJ 是下午,517 放了一场 VJ(当然我当时啥都不懂),于是 xjz 非常热心地帮我把一切都给搞定了(然后他让我加了 AC 群——当时叫初三友好交流群,却没有加女装群——当时叫机房欢乐群。。。)。因为比赛已经开始多时,于是我跟榜把几道简单题做了。
之后的一段时间便是 517 经典的 CF 训练,又过了几天,就搞出了经典的抗水队列(一题提交 >= 3 就要抗水)。翻了翻比赛记录,当时的水平,有时能做到 2D,但更多时候做到 2B/2C 就弃疗了。至于手速,倒也挺快的,就是有时也会 WA。
在这中间,xy 也会来插入几场比赛,题目自然是那些真正的“经典题”,中间其实也有一些不错的题目,然而当时的我水平很低,每次总是暴力打完就走人了。。。甚至印象中还有几次(真正的、数值上的)爆零。(因为当时正好是 101 和 103 的交换期,所以许多比赛的比赛记录现在已经找不到了)。
整个暑假的训练都类似,不是 517 放 CF,就是 xy 放经典题(中间还把我们赶去做 NOI 模拟题,参加同步赛,印象最深的便是 app 提答分超级高。。。),当然后面还有多校训练,中间也夹着几场 TC。中间 517 也放了许多专题。印象很深的是计算几何专题(难度到凸包),当时花了一些时间研究了一下 517 的计算几何板子(但是不是很懂),然后就以一半叉积一半解析几何的三脚猫板子把这些题目写完了。另一个专题是数论入门,当时和 whc 研究了许久,做了许多道(当时似乎我甚至不知道线性筛的那个 break
有啥用)。后来还有个数位 DP 专题,也做了几题,但这是后话了。也有做不动的专题:莫比乌斯反演(在 ryz 讲完课之后放的,但是我当时啥都不懂,甚至研究了半天整除分块都没有搞懂),然后还有个 DP 专题,当时真的不会做。。。
到了后期,517 又分出了一个奋斗组,专门为一些 0 基础的“从夏令营招过来的”和一些初三选手,暑假在教语法和基础算法,等到开学之后才开始做 CF。
再来讲讲训练内外的故事。
第一个是认人。当时每天到机房的第一件事是配环境,第一个就是装 QQ。许多名字我都是在 QQ 上第一次看到。比如当时(以及现在)的网红 yyq(applese,似乎我以前都叫 yyq 的,然后好像是 CTSC 之后随网友大流才开始叫 app 的),当时也是水群小能手。然后就是 ttt(nns),前面我也说过,我是看着他被 xy 带进机房的,当时他正在群中和徐俊老师研究重装机房的系统。除此之外,当时的 trend 是膜 cxt,大家都将模数常量叫做 cxt;还有 xtx,当时刚被 xy 奶金牌选手,也就是女装群名字一部分的来源(另一部分是他某天立的 flag —— AK 女装,然后现在还没有兑现。。。)。另外就是 zzf (因为坐在我那一排),whc(坐在我后面,和我一起搞 517 的专题),还有 xtr(来得挺晚的,当时也坐我旁边,然后我当时还在向他传播一些奇怪的码风理论)。因为我非常低下的记忆力,我过了好久才认识了这个机房的所有(高一高二)选手,至于奋斗组的选手,那就得等到开学之后了。
第二个是比赛。暑假里我 CF 打过好几场,当时的操作是去寝室拿席子,先睡一会,然后打,然后继续睡(虽然有人会选择继续颓),要是醒了就看看 SysTest 有没有结束;后来和大伯混熟了就变成了麻烦大伯开门了;再后来因为 wzz 把被子带到机房被 xy 发现然后就被 ban 了。我当时虽然菜,但能稳定切 2/3 题每次 rating 的增长都是正的。
中间也有许多故事,比如说自信发现原题,大家纷纷拖代码,然后被 517 表,扬言要告诉 Mike,这也是第一波上紫浪潮的开始(cxt,ttt)(这其中最惨的是 zzf,贺(我直接就用贺了)代码然后改错了 FST 还掉 rating 了。。。)。
第一次和 zrf 的见面(似乎)也是在某场比赛的赛前,当时 zrf 是我们这届第一个紫名(第二个 zzy)(好像我忘算 qzh 了怎么办呜呜呜,算了反正他现在我们下一届),能自己带电脑,第一个 Emacs 选手(然而我很早之前就了解了 Emacs【对,就是某 FG 机模开发帖子】,也学过,然后弃疗了),唯一能做到 30min 4 题的选手。
说到这里,就不得不提著名的 30min ABC 抗水比赛——30min 切完 Div2 ABC。这个比赛为抗水队列贡献了大量人才。虽然这个要求并不算高,但当时还是以挑战失败居多(第一个挑战成功的好像是 jxc),比如说像 wzz 就因为 y1
的问题爆零了,这之后就引发了第一次码风大讨论(之后 clf 就开始留空格了,我确定码风开始留空格是在暑假结束之后)。另外暑假里还参加了一场 TC 和一场 CC long Challenge。另外,当年的(前面)几场多校也是全员参加,但是我们也只会做签到题。
另外是跟 517 的故事,知乎上很早就有【如何评价 517】,那里就是著名的【517 驾校】的出处(现在我又看到一个 517 关空调的梗,为什么我一点印象都没有?)。一个就是之前说的 CF 贺题,另外是断网多校(继承 XJOI 训练优良传统),然后大家开热点交题,然后被 517 勒令退群退 VJ group,然后还一群人退了。。。(我是吃瓜群众),以及拿出一个晚上给我们看电影,结果第二天早上就让我们写观后感。下一个故事是本能论,以后再讲。
前面提到 XJOI 训练“优良传统”,确实教练(包括 qy)非常在意断网训练,或者其它训练纪律,但是 py 还是挺多的,比较经典的是 XJ IOI 赛制——原来比赛界面后面输入 /result
可以直接看到榜;然后某一天被自信发现,然后把权限 ban 了,并加上了一句吓唬人的“This action will be reported to xxy”(当然这后来在使用 ACM 赛制的时候貌似出现了问题)。
再来说一些机房里的其他事:当时还是分大小机房的,暑假一开始,一批高二就被赶到小机房,所以其实我们和他们的交流并不多(好像也就 zrf/qzh 这种经常穿梭于两个机房之间的经常和他们交流),这也造成了后面我们的一些现象——虽然最后互相还是认识的,但是交流并不算太多;当然,一些非高端的高二选手还是在这边的。当时也有些外校的来训练:NOI 前似乎有许多(因为那年在绍一,路近),但是现在并没啥印象;之后打多校的时候就比较经常的和一个 ID 叫“大米兔”的选手(四川小哥)交流(顺便从他的博客上学了莫队)(另外就是 yjc,他当时是从报纸上认识我的。。。),另外 VJ 上其实也有些不认识的选手来打,这些人的来历我也无法一一查证了。因为联合训练,当时也有几次上课,当然,听不懂。
当时的作息其实十分宽松,虽然 517 老是说迟到要做俯卧撑,但是总是没有严格执行;当时吃饭也可以到 Arbitarily far 的地方,没人来管(当然除了打多校的时候要 12:00 到)。但是基于懒,我还是养成了全家/兰州的传统,只是有时候谁提议才会到教工路上的面馆和馄饨店去。
(其实还有许多故事,慢慢补充吧)
二
我当时是看着 qy 进 AC 群,当时并没有在意。当机房最后坐着两个老师的时候,也不知道她们来干什么的。第一次和 qy 接触好像是在 xy 表完我中考考这么好,这么一道简单题都没 A 的时候。到了最后几天,她们似乎也开始管理起机房纪律,但是收效不大。
小道消息在暑假刚开始(也许中考前)就有了,回校日我们便是集中在一起,但没过 5 分钟,我们就回机房了。官方的通知其实到放假之后才公布,当时一直潜水的 qy 突然发了官方通知,建立信息班,让家长加群。在一开始,我们其实是编制外的班级,以至于体检也是分到各班体检的。接着就是军训,在这里就不提了。
开学之后的计划是每天一节语文和英语课,其它时间训练。刚开学几天放的是我们在暑假出(搬)的题目,挺友好交流的。然而我出的题目并不好,现在想想真的谢谢大家不杀之恩。至于其它题,虽然水平在不断上升,但是成绩依然出不来。再后来又是老题和联合训练题(据 xy 介绍,“XJ 的 NOIP 模拟题难度一般都会达到省选难度,但是到后面会简单下来”),或者是 517 题。(从 9 月到 11 月每天一套题——除了初赛前——是 XJ 从来没有过的,有一天 517 和我们吐槽,说 xy 说我们把他库存的题目做完了。。。)<!—这些题目在 Summary 中都有介绍,这里就不再多说了。—>当时 zrf 和 zzy 的优势已经很明显了,讲题(如果出题人不是机房里的话)也总是他们轮流,也确立了机房讲题的风格。(比如“我们随机邀请一位 ××× 来介绍一下他的 ×× 分做法”——优越的随机数种子)
因为有隔壁高二的生活状态做对比,所以当各种制度被确定的时候我们的反应很大:比如 12:08 才能下楼吃饭,比如不能上 QQ (当时我倒也没啥意见,除了觉得交流有点烦),不能听音乐(当时我反对了很久,反对的形式就是哼歌。。。)……当时各种争执也并不少见,各种查表也出现了。
(听 zrf 说以前 xy 也查表,装了个摄像头。然后就有著名的“屏幕花花绿绿的,想必在玩(打)游(T)戏(C)”的梗)
(xy 在班主任的要求下,贴了一张机房守则,被我们拿来挑刺牛角尖,但是后来也变成了废纸)
9 月也是我正经开始写 Summary 的时候。之前 517 也要求我们写 Summary 传 github 上。然后开始做 xy 题了,就没有搞了。另外一个方面就是看到当时许多同学都有 blog,517 也推荐搞一个,当时平台也选了好久,最后选择使用 github pages,然后又因为架构搞了好久,研究了好久,因为先捣鼓出 hexo,所以就选择了它。然后就从国庆一直捣鼓这玩意到初赛。
另外一个大事情就是转到 NOI Linux + Emacs,稍微翻了一下代码,是在初赛后一天。暑假的时候双系统就装完了,当时还有“试点”,过了一段时间后才推广。主要原因可能还是 Win 下的 git 不太好用(加上天天还原)(反正家里在用 Deepin)。当时好像也适应了一段时间,主要是 Emacs,另外就是以前是直接存文件到 U 盘,现在变成了必须本地缓存再转移到 U 盘中。当时其实还不会写配置,甚至 NOIP 的时候还是用菜单栏改配置的。
当时正好是第一次调座位之后。我坐在(靠窗侧-第三排,从窗户数第三个座位)。右边是 fx,我经常和他聊以及讨论~~(传授人生经验)~~,这在之后的两年中也是经常的事(其实我刚来的时候他就加我 QQ 了,暑假某天 517 让我们来打 NEERC 我也和他组队)。左边的座位一开始 lyk 在坐,然后自从那台电脑的 Windows 坏掉之后,就几乎一直没人坐,然后就变成我的杂物柜了。。。再左边是 yys。
后面一排坐着谁印象不深了(好像以前是高二,然后开学后搬到小机房去了,我左边其实也是如此),但是前面一排还是得好好介绍的。从左到右分别是 app, hx, zzf, wrq(左边两个顺序好像可能反了虽然重点显然不在这边)。当时一个比较著名的梗是【hx 稳了】,来源是 hx 测样例我必抬头,我看到 hx 测样例必说 hx 稳了。hx 也是机房女装第一人(怎么感觉要变成最后一人了),原因是和 zzf 赌一份代码能不能 1A(据 zzf 说他是看到代码里有 bug 才赌的)。但是最遗憾的是当时女装的时候没赶上,现在照片似乎也删得差不多了。【30 圈】的梗也是从 hx 这里出来的,原因是大声膜人被 517 听到了,然后后来似乎也有贺题选手体验过。
当时另一件有趣的事情是 app 打 CF,由于通校优势,他的 CF 打得很勤,但是 rating 曲线也十分曲折,原因是经常性的 FST(知乎的【在 CF 中 FST 3 题以上是一种怎样的体验】可以一看)。其他人打的 CF 相对少一些(毕竟六点必须起床),印象中只有一场晚上的 CF,其它可能就是周末了。机房第一个上橙是 zzf 的号,因为要打某个有奖比赛,于是就让 zzy 和 zrf 两人一机打,于是结果可想而知(虽然打完之后马上就掉回来了)。
十月初初赛,由于 XJ 初赛模拟题一向毒瘤,xy 在没有对成绩进行标准化的情况下发表重要讲话,“你们这个初赛很危险”“先搞初赛,这两天不要做复赛题目”,于是给我搭博客提供借口,其他人其实也不知道在干什么。至于初赛本身,(ttt 在考场发现身份证没带,然后心态爆炸),确实有一批没过,但比例不高。到了十月底,zrf 开始组织大家单人 Regional,当时因为我在做往年的 NOIP 题于是咕了,现在想想确实是个很有趣的事情。
(NOIP 前的故事就到这里吧。。。)
三
NOIP 结束,luogu 上测完程序,我的内心是崩溃的:好好努力,明年再来吧。当时屁颠屁颠地就去买重难点了。
一周后——woc 我 D1T2 怎么有 90?于是 440 的总分比机房里许多同学都要高。。。(当时的成绩,其实回顾一下,一等率是高于 50% 的,一批同学——基本都是公认的优秀选手考出来了,当然也有一些同学没考好,比如说像 yzf 叶老师 D1 把 .out
打成 .ans
而爆零)
其实我在以后一直都对 D1T2(也包括 D1T3) 的出题人数据这么水心存感激——如果这(两)题真的没分了,接下来的故事可就不是这样的,从宏观上讲没了这么多比赛的经验后面的路可想而知。这个故事也因此经常被我提起。
NOIP 搞完,可算是好好的恶补了一番文化课。这期间的梗也和文化课有关(比如毒瘤课代表 ttt,比如 lyric,比如地理传销竞赛)。在此中间,我混上了个班委,(也发现我的演讲能力已经为 0 了。)
虽然重心放在文化课,但 xy 也一如既往想把我们拉到机房去——尤其是那些 500+ 的选手。当时大家去机房当然十分积极。既然有省一了,那么就继续往上冲吧。
当时最著名的就是周六的讲课——虽然没举行几次。clf, wzz, zrf, zzy, qzh 是这几次主讲人。
跟随着这些讲课的步伐,我写过(也是为数不多的专心搞数据结构的时候)一个星期替罪羊树,从此得上了“平衡树恐惧症”;研究了一个星期网络流,虽然板子老是背错;写过线性规划,为了那个 97 卡了一万年精度(虽然现在精度又爆了)。等到 THUWC 名单下来,开始停课之后,又对着 SAM 网上为数不多的课件开始研究,当时 (2018 年初)SAM 资料还没有烂大街,唯一比较靠谱的资料就是 clj 的课件和零星的一些博客(我当时还不知道有集训队论文,也有可能看不懂),加上我还不会 SA,然后终于在自闭了许久之后“顿悟”了其内涵,开始写模板题。在一道 CF 题之后,又跟随大家的脚步啃 vfk 的论文。
后来 THUWC 和 WC 时间确定,待名单出来之后,一批人开始停课。在停课之后,除了 xy 的日常训练(当时的 5h 训练时间是真的用不完,后面 2h 左右就是一边饿着肚子一边撑着,然后考完了大家一起去外面吃饭),zrf 照例也组织了(好像一场)Gym (那场 Gym 现在印象最深刻的就是下午拿着学校发的八宝粥作为点心)和若干场 CF Round VP 和 Mashup。除此之外,还有“杂题选讲”,著名的 clf 树(CC Count on a Treap
,线段树维护单调队列)出处就来自此。这段时间,我觉得可能就是我水平提高的重要时期。
接着就是 THUWC 和 WC,THUWC 的小收获无论如何也给了我前进的动力,WC 的旁听也让我感受到了许多。
在停课之后,qy 为了防止机房里的人人心涣散(特别是在 1 点比赛完之后不会吃一年的午饭),任命 yzy 点名。一个影响深远的任命。他一丝不苟、认真负责的工作态度很快收到同学们的拥戴,大家亲切的给了个他一个称号——“查 T(LE) 委员”。
另一个能笑一年的故事就是 qzh 坠湖。然而当时在楼上,并没有目睹。没有停课的选手在周六打雪仗,东北来的 qzh 不知道是在冰面走惯了,还是倒车的时候没注意,就掉进了湖里,搞出来个大窟窿。(知乎【如何评价 XJ 著名 OI 选手 qzh 坠湖事件】,当时有外校回答“qzh 是 XJ 的?”——一语成谶)。
THUWC 和 WC 印象最深刻的就是阅览室了(去过的都懂,大家戏称黑网吧),当然,笔记本其实是在那之后进手的。另外就是在长沙徒步若干公里从学校到宾馆(虽然之后就打车了)。
(blog 好像这两点没写,所以这里补上)
四
寒假回来紧接着就是省选训练(当然 qy 还是把我们去过 WC 的拉过来补了个课)。不知为何我对一场比赛印象很深刻(可能是那天我破例到很远的一家店吃中饭的原因),一道 SAM + 树剖,样例是~~【数据删除】~~这首诗的官方英文翻译,然后子任务依赖暴力写挂标算分也没了。。。
回来之后虽然也有讲课,但大家越来越咕,最后只有 zrf 讲了 FFT 和集合幂级数。
在一次换座位之后(那天我是第一次 CF 上 FST),高二的选手被赶回了大机房。~~他们的开车能力很强。~~印象最深刻的就是 zjn 开一个 TC,然后小屏隔膜。
这段时间,一试前,我把欠着的数据结构学上了,到了二试,又因为某些原因(似乎是跟 wzz 风)开始切 TC(记录就在 blog 中)。
在寒假里,ttt, yzf, zk, fyn 退出了,而 hpw 加入了(虽然现在看这并不是一个明智的选择)。
对于这段时间的故事,我的印象不是很深了。在换完座位之后,我前面那一排被拆散了。然后我就天天跑到 app 那边去聊天。。。
xy 组织了一批人去 HNOI,然后 xtx 被丢在火车站。。。
另外就是省选中的一些 insight,Round 1 的时候,我刚吃完饭,然后看到群里说 app 生日,然后就跑到他房间了,当时气氛挺感人的,在烛光中,切蛋糕,(大家喊着抬 app)。另外便是 517 在群中宣传“本能论”,这玩意儿挺玄学的完全不懂(但并不是什么主流思想),甚至还“骗”过了几个初三。
那个季度国内的网络赛似乎挺多的,牛客开始举办比赛,ACRush 举办了男人八题,除此之外还有美团,“三元环”的梗也是那是产生的。
机房还有一次狂欢,是 World Final,估计是 517 跟 xy 说了,那天还没有题,全机房都在看直播,关心吉老师的动向,以及封榜后的疯狂分析。
其实我们班有许多初三选手,在上个学期的文化课学习中感到不适,于是 xy 这学期连省选都只让他们参加一轮,然后就把他们打发去学习数学了。。。
五
带着对二试反向筛选的无限谴责(本来一试时一片大好的形势,就这么被 xy 奶没了),我们再次开始了(短暂的)文化课生活。其实我们那年挺幸运的,春游秋游都安排在了比赛之后,所以我们都有机会参加;其它活动也在大家的强烈要求下参加了许多(而这一年在我印象中我们有参加过什么活动吗?)。那次春游印象也蛮深的,虽然去的是老地方,但是就因此和同学们打了一天的牌。。。(另外还有几次活动,秋游——没啥印象,就是记得因为语文没考好,然后现场被喝茶;运动会——下雨,打湿了好几本书;Spelling Bee & 迎新——因为个人原因没去,lyric 梗取自于此;环湖跑——没啥亮点,但是 WL 老师纷纷上镜;另外还有周日下午的一系列讲座,印象不深了。。。)
由于临近学考,而历史地理进度依然滞后,于是一天两节历史地理的“神”课表第一次出现,历史老师(们)也完成了一天上一章的壮举,地理老师虽然一向。。。但是也快马加鞭的完成了任务。
中间的 CTSC 和 APIO 玩得很开心,两金的战绩也给我的 THUSC 鼓足了信心。
APIO 结束后,遗憾的是 qzh 因为学籍的原因,加上看到浙江竞争的压力,回到了黑龙江。
一个月飞逝,转眼间就到了 THUSC,三四天的停课恢复训练后,我们去了北京。当时的我们显然不知道接下来一个月会发生什么。
THUSC 过程正如我所述,和 NOIP 一样的惊险,Day 1 的神乱搞与 Day 2 稳住切签到题,最终获得了此行的目标。而在和 xy 吃饭庆祝时,xy 突然说这次 zzy 和 zrf 来是来参加集训的,你们这些拿了一本的文化课不需要太抓紧,你们要不也留下来。当时正“春风得意”的我们(我, cxt, wzz, jxc,以及本来就有 D 的 lsk)自然立即答应了。
虽然 THUSC 对于我们高一来说是个小丰收,但是对于高二来说却是惨败,无论是 D 类选手 cyz, wcz,还是最后一搏选手白羽鸡、陈思睿都没有任何收获。之后我们都认为可能是我们高一光芒盖过了高二,加之高二本身的高标准,并预测明年的 *WC 会是一场苦战。
第二天下午,我们便驱车前往北师大附属实验中学,知乎上有【如何评价清华博士胡伟栋到学校当教练】,(里面的答主许多都提到了北师大附中和北师大附属实验中学不是一所学校)作为中国绝无仅有的 IOI 2 Au,也算是非常牛的前辈了。
训练的前几天由于高考,我们在旁边下榻的宾馆训练。接着便是 XJ、中山纪念中学、北京十一学校和北师大附属实验的联合训练。训练计划(相对于 XJ 的上午做题,下午聊天来说)群紧凑许多——三天两套题,上午训练,下午讲评 + 杂题选讲,第三天则是专题讲课。训练内容由四校轮流准备(虽然十一学校那次由于提前 AK 太多于是 hwd 放出了吉老师的题防 AK 但也没防住),每两场成绩排序按比例划定 Au/Ag/Cu 公布。
那次集训也算是大开眼界,接触了许多前沿原题,也看到了(特别是中山)的神仙的风采。
趣事也不少:前两天因为老是忘记拿通行证总是在和保安斗智斗勇;学校的旁边就是西单,每次总是到那边去吃饭,成本考虑,总是去一家意大利面馆,除此之外,就是金拱门了。当然,也吃过几次好的。出门左拐,有一家小饭店,卖臊子面,然后被我们读成照梓面。。。另外,宾馆旁有两家早餐店也挺不错(怎么全是吃吃吃。。。)休息的时候也经常闲逛,一次我对着地图找超市,更多时候是那几家店吃腻了全地图找店,有一次我们甚至拐上了长安街(当时身份证放在学校,幸好没人来查表)。。。
在我们离开的那一天,我们去了趟北海公园,wzz 和 lsk T 了被罚吃芥末,你画我猜 “天寒地冻(栋)”,十多人的三国杀。。。
当然,虽然 xy 乱奶人,我们还是不敢放下两门学考。家长们一顿忙活,把我们的书全都快递上北京。晚上九点回酒店,总是先背一个小时的书再休息。
到了月底,临近学考,我们都急着想回去。经过和 xy 艰苦的谈判,我们终于在考前前四天回到了杭州。早点回来总是有好处的,我发现在学校的历史背得比我细多了(著名的数话筒梗)。经过了几天的疯狂赶工,终于把细节给硬记下了。
然后就是学考。题目挺简单的,第二门地理考完对答案的时候也挺自信的~~,然而和我们一起吃饭的 wzz 就不是如此了~~(补个刀,据说他在北京的时候熬夜看世界杯)。
六
学考结束,期末一些事情搞定(比如说晚会,我们可是把荧光棒给玩坏了),暑假开始了。
回杭州的时候,就发现五楼开始装修了,然后各种东西收拾了半年,于是再也不敢把东西放机房了。。。
装修的其实是 501(原来的文化课用机房)和 511(小机房,并和 xy 办公室隔壁,xy 办公室搬到了对面),507(大机房)依然留作训练,大机房对面也开出了一个机房。学数学归来的初三的同学加上新招的(一直跟着 xy 的贺指导溜去江对面的笑话也是这是传开的,之前便有笑话该人省选一试选手目录ZJSX-
(浙江省选)打成了ZJXS-
(浙江选手)而爆零,另外便是抄代码的事情——具体细节记不清了——而这一行为被我们冠名为“贺题”,后来江对面某同学写了篇周记讽刺此事,还被语文老师表扬写得好。。。),和之前一样,分成提高组(跟我们训练)和奋斗组(在楼上由 517 授课)。因为各种原因,xy 拉了十几个人,说是【要冲高端】的去新机房。然后我又在新机房找到了白羽鸡帮我装的 18.04。
其他冲 NOI 的选手也在这个机房,和我们分开坐(按 xy 意思是不影响他们训练),zzy, zrf, fls 踌躇满志,lsk 跃跃欲试,而 cyz 和 wcz 则发出了这样的感慨:“终于明白上一届的 D 类选手这时为什么在颓废了。。。”
在和他们做了几天 NOI 模拟题之后,xy 突然说“接下来几天浙大有个 ACM 校内训练选拔,以前我们都去的,这两年没去了,现在我们又想让你们去了。”于是在 NOI 代表团出发后,我们去浙大开始训练。
(在浙江,)OIer 选手水平 >> ACMer 选手水平,这句话(至少在中高端选手层面)确实不假(其实从某个角度来说,这也是中国的现状)。我们过去之后,前十我们总能占很多的席位(大概平均有个 7 到 9 个)。另外一件事情是,有两次我们遇到了 XJOI 原题,便开始有秩序地贺题,恶意带榜。。。每天在那边吃中饭也挺有趣,有一道菜叫【咕鸡】。。。这也是第一次和 cjb 的正式接触。
到了七月下旬,ZJU 训练结束,NOI 也结束了,高二的退役选手被留下来又逃走了。大机房又开始了 NOIP 训练(又是陈年旧题,然后我们真的看不下去了,于是开始试图修历史遗留锅,然而力不从心)。xy 把我们拦了下来,让我们出题。小机房里顿时陷入 idea 不够的惨况。我寒假里已经有一个 idea,但最多放 T2,然后我先想 T3,想到前两天 CC 一道题(说到那场 CC,打得也是心力憔悴,也是第一次写多项式板子,搞生成函数理论)似乎可以加强,然后发现不可加强,也不可写;然后我就到 blog 里去找 idea,看到一道题,于是把它改编加强了一下,然后估计了一下,感觉码量有点惊人(最后写出来 300 行),然后就被机房里喷了(被喷感觉和吉老师在 NOI 出了大码农防 AK 有关)。另外被喷的是主席的码农题,以及 lsk 的大分讨计算几何。zzf 当时坐我旁边,一直在说“题目很小清新的”(flag)。
接着就是验题以及确定 T1,本来想好找 fx 验的,结果 wrq 在旁边听到也想来看题,没好意思拒绝然后就变两个验题人了。先是验了 T2T3,反馈说 T2 比较简单、T3 确实码农(似乎 wrq 写了一周。。。都快写出心理阴影了。。。),然后我们开始讨论另一道题(当时反馈完之后说 T2 可以放 T1),最后讨论了半天没啥好 idea,然后就把我以前想的一个签到题(2A 难度)放 T1 了,当时的说法是 45min 前两题,剩下时间写 T3。
然后是造数据写题面,因为不知道会咋 FST,数据造了半天,返工了好几次,终于造完了。题面我写,三个人轮流审,也几易其稿。终于在放假前搞完了。
在暑假里,517 照例放了许多专题,但是我们都咕掉了。之前也说了,大家一起打了场 CC,打得心力憔悴(有猜结论题,也有科技题,搞了好久)。(咕咕咕的)LOJ 也有场比赛,在那里学了 Min25。
除此之外,(到了后期题目出完)我以打 CF 为主要娱乐方式。
CF 有几场时间不错,大家都涨了许多。
暑假自然是有多校的,HDU 的多校这边只有集训队那里有一个号,于是变成了小机房谁有空谁打系列,我打过一两场,大家出算法很快,但都不想写(因为写了就要承担罚时)。。。牛客多校都在大机房那边打,几个队相互 py。。。(但都不给代码),我是我们这边(就是换完座位坐后门边的一群)的(一个)代码手,怎么说呢,罚时也挺大的吧。然后搞不好就变成聊天了(至少 qy 这么觉得)。整个的节奏不算紧,都是很松散地在打。
从省选开始,yzy 就以查 T 委员的身份红遍全班。不知何时,他的 id yzyyylx
,被冠以“遥遥领先”的称号之后,也就没有不火的可能了。
大家都喜欢注册小号,CF 上的 l 和 I 分不清,于是别有心者(以 zzy 和 app 为首)就以此注册了一批小号,在不想打大号的时候打。而 yzy 的小号据不完全统计,有 > 50 个,作为通校选手,同样有许多打比赛机会,他就一个一个把这些号打上去(btw,app 当时也是这样,他的橙名号数应该是最多的,甚至我们有时戏称 app 提供“上橙服务”)——但除了一个 __123456__
,截至我们退役时,这个号是 CF Rating 榜 rk 倒一。
yzy 有几句名言——“Windows 优越”“Dev 优越”“大括号应该换行”,这与机房在 NOIP 之后逐步形成的习惯(这个风气也是 zrf 主导,我和其他几个 Linux 选手做宣传)——Linux + Emacs/Vim 恰好背道而驰,机房里大部分选手大括号也不换行(有趣的是,主席也持上述三个观点),加上他说这话时的语气,自然成为被抬的对象。(这也是我 NOIP 模拟 T1 题目背景的来源。)
暑假里,XJOI 内部交流网络正式成立。
210.33.19.103 —— XJOI 官方训练平台
101 —— 备用训练平台
(好像当时分配 IP 的时候 104~109 是评测机。。。)
102 —— 517 维护,论坛 + 网盘。成立于 2018 年 5 月。然而这个论坛基本是奋斗组的在水,最发光发热的时候是 NOIP 期,主要是初赛胡策题解在上面,加上 zzy 也会在上面发发 CF 比赛和 517 题(被称为“做完此页联赛上 500 分”,事实上是“做完此页联赛 AK”,因为只有 zzy 口胡完)的题解。于 NOIP 后凉掉。
208 —— zkc 维护,XOJ(based on SYZOJ)。成立于 2018 年 4 月,缘起于 dark BZOJ 事件,BZOJ 前 5000 题数据泄露,故大家合计了一下,就搞了这么个 OJ 交权限题。第一版在一次克隆中阵亡,新版于暑假搭起来。一直有人稳定地交 BZOJ 权限题,最辉煌的时候是 NOIP 前一周的 NOIP Rounds, 全是被 xy 毙掉的题目(by me, zzf, jxc & czx),此外还有“松”系列卡常练习题(我和 zzy 出的),一道多项式模板题,一道 Dijkstra 卡常练习题,一道 Blogwoosh 练习题,一场搬的 Test Round,fls 等人的 NOI 模拟赛题(伪权限题)以及 NOI 系列赛事的题目(其中我维护了许多题目,所以我对这些很了解)。yzy 有 hzjsxxy
和 19O
等多个小号,时常在讨论版中唱双簧。讨论版中有一贴曾因过度使用 LaTeX 公式导致全站崩溃。个性签名区亦成为互相膜拜与宣传之场所。zkc 对 SYZOJ 默认界面进行过魔改,并在首页加入广告栏以敛财(上面曾挂有 xy、xtx、zzd 等人帅照),据 zkc 自称,每月广告费按 fibnacci 数列增长,我曾发【普吸金 OJ,一个 €€£ 的 OJ】回应此事。于省选后凉掉。
七
开学了,501 和 511 也终于装修完了,我们纷纷搬迁至 501,奋斗组则在 511 训练。新机房桌子呈四长条布置,(按某些同学说法,便有了 1/4 的开车位,)有些高端白板(然并卵)和其它高端装置。xy 曾说,是新机房要有些新规矩,然而不久就都被打破了。。。高端组前两天还是好好得呆在大机房(这也是一条规矩),后来也都慢慢溜回小机房了。。。
相比一年前,NOIP 级别的训练没有那么恐怖了(但是有时候 xy 下发的任务——比如在若干天做若干道 XJOI 的经典题目,实在太无聊了。。。),大多时候(除了我们之间的胡策题,有些是真的有难度/毒瘤题)也能够应对,牛客上的比赛也打一场咕一场。那时正值 IOI,除了看到中国队的成绩终于回归正常以外,9 月的许多时间就是在研究 IOI 题,除此之外便是 CF,经常也会徘徊于 OI-wiki,luogu 日报和各大 OJ 讨论区(特别是 CF 的),或是跑到大机房或是小机房某个人那里去聊天(比如 zkc app fx),这个习惯后来就没改掉。
国庆期间,wys 照常来修 OJ,顺便给我们上了上网络基础课。初赛前,xy 让大家出初赛题,大家都往死里毒瘤。。。
初赛结束。由于眼瞎,考出了最差初赛成绩。接着做了些校内胡策夹杂着 xy 题之后,开始了最令人诟病的联测。大家推测,还是那四校联测。训练唯一的区别在于加入了线下评测的环节。大家都说,这次 xy 做了“拿原创题换原题”的买卖,质量可想而知。
到 NOIP,依然是那么惊险。但是我还是想详细的说一下之前的内幕。
作为主办方,517 在赛前确实做了许多准备,包括自动化的收卷程序(现在想想,这套技术很有可能是从余姚中学学过来的)。那天他拿了个比赛样机,让我们测试一下。于是我们给他装了 NOI Linux,并测了速,然后 wzz 说要拿这台电脑。后来 517 说把 NOI Linux 删掉,我因为要去桂林就懒得搞,其他人也懒得搞。
然后后面某天说 517 要拿我们那天装的来克隆。然后我们跟 xy 说这件事,xy 莫名其妙把所有人先表一番,然后让我们(clf, wzz)去紫金港去检查一下有没有清理干净。于是我们就是第一批看到考场的选手,Win 区一些键盘就是我们装的。
第二天,全校到学校来做“压力测试”。结果 xtx 作死把 root 密码改了。加上 517 网还没配好,于是折腾了一个上午,Linux 区和主席台离得远,于是我和 czx 就用话筒进行通信(现在感觉,可能影响到了 Win 区做题,但是似乎也没关系,因为那天题不难,大家应该都做完了。。。)。
后面的 XOJ 胡策,zzf 的“小清新题”最令人自闭,当然也是我 NOIP blog 的第一句话的来源(前面 wrq 看 zzf T1,硬刚一小时,打表 15 min。。。)
至于我的那场胡策,A 题 resubmission 一片,B 题 A 一片,C 题暴力一片,只有 zzd 2h 写完 std,毫无区分度。
NOIP 最令我怀念的两件事就是出题和打 ACM(应该叫 JB 的)。出题在 blog 讲得很详细了,再讲讲 ACM 背后的故事吧。
当时是 9 月底接到 517 通知的。后来才知道还有一队的事情,再后来才知道 517 只 py 到以大学名额参赛的事情。但是不管怎么样,我们还是开始训练了。
一开始的训练是牛客上的重现赛,参赛选手不强,稍微打打就挺高了。除此之外,便是 CF Gym 上的。我们这队还算【训练有素】,app 前期上,我和 zozo 后面一起搞(这套策略确实实用,之后和 czx 打效果也不错,但是后期题可能就是以我为主了。。。),wrq zkc 那队因为有个 yzy,所以不稳定因素就多了(即使换上 fx 也是如此)。
(上一段在扯淡)
八
NOIP 结束了,局势正如当时我写的一样——各有各的目标,时间已经不多了。
两周的文化课后,掀起了再一次停课的浪潮。大家各怀目标,因此停课节奏也不同,我选择上语文和化学课(这个决定做下来有点鬼畜),有些人直接全停(非常想冲 T/PWC 的),有些人上学考课(希望不大的),以至于放题的时候,有人甚至会题写到一半去上课。。。
对于我们这批,目标很明确——以省选为目标,以 WC 为跳板。虽然当时确实已经传来了自招缩减的传闻,但是我们都寻找着各种论据反驳着这个传闻,加上加权赋分这件事,更让大家坚定了要尽力逃脱高考的决心。
这段时间就是出题搬题 + 胡策。而我自己也将目光回到各省省选题上了。我还记得在冬日的阳光下想着九省联考题。。。(胡策 Summary 吐槽得都差不多了)
这一次的出题先是找好了一道搬的题目,然后慢慢憋出了 T2 和 T1,也是找 fx 验题,但是他更忙,所以写了标算就没了,但是这一次的排版借鉴了 tuack,私以为比 NOIP 那套题的排版要好看。。。至于搬题场,重心都在挑题、排版和改交互题上了。。。
再来说说校赛,题目都是高一的,大部分题还不错。当时组织挺混乱的,也忙于打比赛(自闭),也没有心情去发现一些有意思的事情。
紧张的学考复习(四门课,每天依然只有晚自修,依然是进度堪忧),有趣的胡策(讲题非常 high,抨击出题人——甚至直接抬,或是秀花式乱搞),很快到了 WC。
学考结束后,我们立即到了广州,也是声势最浩大的,仅高二就 26 人出动,更别提先期出发的高一和 fls。紧接着就是 THUWC 和 WC,但是 THUWC 宣讲上的“修大坝”吐槽,“一本约”变“一等奖”和非法竞赛风波的相继出现也揪住了我们的心。
寒假结束,便是省选。胡策继续,然后便是联合训练(联了不同的学校),然而依然原题居多,但这回 xy 聪明了,开始拿老题换原题了。我也在查漏补缺,做着最后的准备(当时还不知道省选咕咕咕了,后来发现计划做完了省选还没开始。。。)。
省选一试。在去的路上,温暖的车厢中,想象着几天后的省选。回来时,阴雨绵绵,担心但依然心情平静。几日后,却是骂吉利骂得震天响。
接下来的一个月,虽然依然紧张,zzy 的题也是精心准备,但是已是心凉了半截。两场校赛确实是欢乐的源泉,也是很好的结果。但一感觉心情不爽便去找人聊天,或是看他们雀。。。
省选二试。临行前,感慨万分。回来时,依然是个阴天,失落,但依然抱有一丝希望。几天后,绝望。
CTS 和 APIO,遗憾缺席。
接下来还有 SC,还有 NOI,虽然无法亲临现场,但是依然 bless all,愿大家都能达成自己的目标,GL&HF!
这半年,xy 做了两件奇怪事——105 和写书,都是面向低端选手的,但是却让高端选手来做(“冲高端”),在这个时候,只会难题漫天飞。
虽然退役了,但是我还是要说 zzy,当时看他的论文就是毛估估的,就提醒他写严谨点。结果真的败在这里了。。。
九
故事确实结束了。但我还有许多事想讲。
这两年(不到),确实是成长的两年,也是变化的两年。我的 OI-Archive
记录了许多的变化。
这其中最明显的便是码风。(下面是考古)
曾经有人统计过代码数,但是因为我的目录结构,把选手文件也给放在一起了,所以不便统计。根据毛估估统计,大约是 2194 个 .cpp
,共 8.7 MB,平均代码长度 4.06 KB?(应该不至于,可能把一些 checker 和奇奇怪怪的东西放进来了)
刚进 XJ 的时候,码风便是没有接受过任何指导的一样——头文件乱贴,空格不加,缩进也是 Dev 默认。(说到这里,我还是要说 yzy,天天中文变量名,我当时至少还是英文变量名)
接着在 517 的指导下,以及 clf 的影响下,逐渐建立了些规矩。比如常量用全大写,数据类型(除了 LL
和 DB
)都是首字母大写,函数变量小写,也开始勤加空格(以前手速就挺快,刚转的时候大拇指根本反应不过来,就和刚转 Emacs 时一样)。这个规矩虽然并不好(更多人会将函数首字母大写,这样似乎更科学),但是也就这么过来了。
namespace solver
的习惯是从 2017.9.21 开始的,当时的初衷是为了让文件夹里的文件少一点,后来甚至搞了一个同文件对拍用头文件,但是实在太难用了,所以就没用。以前不知道常数理论,就算是只用一次的数据结构也用 struct 包。
#include <bits/stdc++.h>
是从 2017.10.1 开始不用的,当时是因为对 NOIP 能不能用 bits 没有定论。后来除了打 ACM 赶时间以外以及 TC 贴模板以外没用过(甚至 CF 比赛都现敲头文件)
using namespace std
是从 2017.10.23 开始不打的,当时觉得只是好玩,结果到延续了两年。至于影响打字速度——我本来代码就长,多打几个 std 也没关系。不 using 的优点其实在算法竞赛中不明显,只能算是一种习惯罢了(根据我看 OJ 代码的情况,估计全国也没几个人怎么干)。
固定三个头文件(cstdio
,cstring
,algorithm
) 是 2017.11.6 开始的,当时是因为这三个头文件使用频率高所以固定下来了,实践证明确实如此,即使是 vector
也没有那么多。当然敲到一半加头文件也有点累,但是也已经习惯成自然了。
缩进是和 NOI Linux 一起开始搞得(不晚于 2017.10.16),当时小拇指真的酸。。。
另外的一些小习惯(比如 seg_tree
的隐形 private/public,static
的使用)查起来就比较繁琐,而且也是不断在变化着的,同样的,使用没有理由(虽然说常数总是挂嘴边,但是我也没有明确证据这样会快或者慢),只是习惯。
我的码风偏长,虽然手速较快(但是其实错误率也挺高的),也没有太大的优势,反倒是比较慢的思考速度和不断的返工拖慢了解题速度。
十
说到 OI,不得不提机房文化。
机房里大的座位调整过四次,小调整不计其数:
第一次是在 2017.7,当时 xy 说要老新搭配着坐(强的坐中间,弱的坐两侧),互相帮助。座位也部分反应了水平。右边中间坐着的都是像 zzy, zrf, lsk, jxc 之类,我坐在左边,周围有谁已经介绍过了。
第二次是在 2018.3,基于同样的原因,同样的排布方式,除了左侧前面被高二占去外。我向后平移了一个座位,fx 经过换座位依然坐我右边,xtr 坐我左边,那两个月他想必是被我的歌声给吵死了。。。另外提一句最后两排——左边 wxs, yn; 右边 czl, app, wrq, 前面 zkc,这些同学都在后面(特别是暑假的时候)和我聊得很欢。
第三次是在 2018.9,其实有两次,一次是新机房还没就绪前,一次是在新机房完成后。因为所有新建机房均采用四长列的布局,相对来说,进出相对容易,也多出了 1/4 的“开车位”。在 NOIP 前还实行过“考试座位”,因为时间不长,所以就不作为一次列入。
第四次是在 2019.3,高二的全部都坐到一侧,相对较为紧凑,也更容易聊天开黑。
需要特殊说明的是,自从 xy 开放小机房后,许多小机房选手常驻小机房(后来由于聊天原因,部分搬去老机房),除了比赛讲题颓废外,基本不去大机房。
机房文化的很大一部分是隔膜。除了那些全民隔膜外,(近年)OI 圈盛行的隔膜主要是三个:generals, slay, majsoul~~(不对还有各类 galgame)~~,其中前两个玩家群更纯一点(匹到 OIer 几率更大),而后一个则是新秀,甚至成为出题人的最爱。
至于查表与反查表,也是这其中很大一部分,在我们这一届以前,机房(据说)就像网吧。至于我们这一届,一开始还行,但是随着反侦察能力提高,隔膜率呈不断上升态势,到了今年省二试前,已经。。。了。
(不多说,防被查表)
十一
OI 非常大的一个发展优势就是其国际交流的便利(虽然很多时候都是国内科技的输出)。CF(Codeforce) 就是一个优秀的交流平台。
说实话,我的 CF 做题数比上 BZOJ 的做题数(应该说是主动做题数,如果算上搬的题可能不会那么悬殊)应该是个很大的数。但是我的 CF 比赛记录不多。
而从整个机房来看,CF Rating 的增长史也值得一看。
第一阶段是 2017 年暑假和 NOIP 季。一批初三就来校的同学凭借较为丰富的经验率先上紫。我在这一段时间则完成了 1500 -> 1800 的上升。
第二阶段是寒假以及省选,更多的同学上紫,而第一批正在向橙名冲击(这其中也有 rating 改革的功劳)。我这一阶段只打了三场:Goodbye(贴紫线),春节场(凭借速度优势大步上紫),FST 场(一题自闭,又因为板子抄错 FST,掉了许多)。
接下来在暑假和新的 NOIP 季,凭借暑假大量的比赛时间,以及之后丰富的傍晚场,第一批上红,第二批上橙,第三批上紫。我经历了两场大涨,两场因为 Resubmission 而 GG。我还想提一下 wrq,暑期好不容易打了几场上了紫,然后接着的几场傍晚场接连 FST 调回蓝名,而且每次 Systest 前必毒奶一番,被我吐槽成继 xy 和 xhk 后第三个毒奶~~(虽然这段时间的事件表明我可能会成为第四个毒奶)~~。
接着则是刚结束的省选季,大家向着橙名和红名发动最后的冲击,我也最后从红线以下一点一跃进入红名。
而在各阶段(第一阶段可能没有),小号都扮演了很大的角色。主要有这么几类:
-
高仿人名,如
orbitingfIea
,Iangsike
,yzyyyIx
等,所有者丰富,yzy 甚至还有luogu_bot
和Iuogu_bot
(luogu 的 vjudge) -
珂朵莉系列(共 16 个),由 zzy 所有,在一场 Div.2(好像还是 Edu)中试图刷榜。
-
shadowfall 系列,由 app 所有,由 app 一个一个把它们打上橙。
-
植物大战僵尸系列,本来也想刷榜,但是因为在回复区作死被 ban。然后好像只有 app 手上那个由 app 打上橙了。
-
历史名人系列,由 yzy 所有,也是他小号中的大头,大多只是拿来供着。
-
教师系列,如
hzjsxxy
(由不知名学长所有),wvyiqi
,probIem_solving
,zidian
, 由 yzy 所有,打上什么颜色由 id 决定。 -
__123456__
,掉 rating 专用,由 yzy 所有。 -
AFO_OFA
,名义上的机房号,由 app 所有。
十二
之前讲的其实都是 XJ 的 OI 故事,而全国 OI 圈乃至整个算法竞赛界都是不断发展的,也是十分有故事的。
由于我对群以及裙文化不是很了解(我 QQ 用得少),所以还是讲讲那些大局的东西。
首先便是这两年的各大比赛。2018 年确实是 CCF 出锅的一年,今年结束的比赛也有吐槽点。但是也想好好评价:
- THUWC2018:挺好的比赛,也开了“角点检测”之先河(THUWC/SC2019)。
- PKUWC2018:第一场数数比赛,开了“斗地主”之先河。
- WC2018:因为广播原因导致整场被喷,题目其实不错,但开了乱搞之先河。
- 各省省选(2018):各有千秋。
- ZJOI:反向省选之典型。Day 1 题目难度区分度都有,但 Day 2 的一道突然的 easy 突然打乱局势。
- 九省联考:题目整体不错,除了又被乱搞外,可能是当年组题质量最好的一场。
- HNOI:题目正常,但是顺序乱放,也坑了不少人。
- CQOI:原题模板题。
- CTSC2018:两道签到题,一道原题改,一道假题,一道鬼提答,一道部分靠谱,但也要 OEIS 的题。
- APIO2018:没啥吐槽,外国人不知道中国科技的发展。
- THUSC2018:题目挺靠谱的。
- NOI2018:确实不错的一场,有简单题也有难题,锅不算大。
- NOIP2018:初赛禁赛事件算是大锅,复赛组题也是非常神奇。
- THUWC2019:题目不错,难易兼有。
- WC2019:传统交互题目 idea 不错,提答就有点凑。
- 各省省选(2019):
- ZJOI:题目比较典型,但是太卡常了。
- 十二省联考:有靠谱题,但是有毒瘤题,组题上也有一点问题
- HNOI:题目很好,但是组织混乱
- 另外 GX/GZOI 虽然难度不大,但是组题也挺认真的。
从这些比赛中,加上平常的观察,也能看出 OI 发展的一些趋势:随着这两年选手数量和水平的不断提高,题目是越来越难出,在前段时间,由于瞎出非传统题引发了非常大的争议,所以近期的出题人(以算协为首)十分想提高题目的质量,经过一些尝试(其中也有许多曲折,被喷了几次),有一定成果,但是现在又因为种种原因遇到了困难。其实从整体上来看,因为新科技的不断发展,加上大家水平的提升,想出一套好题(甚至说在从全球范围上来说)也是越来越难。这个结论准不准,可能要到今年 IOI 才能揭晓。
从另一个角度来说,CCF 作为主办机构,在推动题目质量提升方面的努力是有限的。CCF 在近两年做的事并不让 OIer 满意,赛事组织水平并没有明显提升,却一直吸金,其实经过计算会发现,我们所交的费用(特别是 NOIP,CTSC 之类因为本身有一定支出,相对好一点)是远大于 CCF 的举办成本的。至于 jyb,其政策确实不受竞赛选手欢迎(其本身导向性是否正确我不想在这里提),CCF 的反击也有一定道理,钱不能不收,但是一定要有理有据,即使作为 CCF 的教育基金(自称,用于建博物馆),也因更公开透明。
而民间,始终不乏推动 OI 进步的力量。无论是(从某种程度打破 BZOJ 垄断的)LOJ(一方面由于至少能看的 UI,也加上其 Libre 的思想,我基本选择 LOJ 作为做题平台),抑或是帮助初学者的 luogu(以及 luogu 日报)和 OI-wiki(这两大平台各有优缺点,日报相对来说内容过杂,而 wiki 在内容质量、统一性上还有一定欠缺,依然需要不断的迭代发展),或者是借助于商业平台,国内为数不多能够提供定期比赛的牛客和 CometOJ,甚至是仅仅完成公开获奖资料整理任务的 OIerDB,都为 OI 的发展打开了思路。然而,民间的活动却会因为精力、资金等原因咕咕咕,无论是网站的维护者,还是出题人,甚至像 517 一样的教练,总会遇到困难,有些困难是难以逾越的,但不得不承认,这些看似微薄的力量推动了 OI 发展。
OI 相对于其它四大学科来说,有其独特之处:我常称其为“应用学科”,这样的定位确实使 OI 的发展遇到其它学科没有的问题(比如命题来源,比如【复杂度】和【常数】之争)。但这样的定位也给 OI 打开了一扇窗,依托于网络时代,OI 的发展确实像这个信息爆炸的时代一样迅速。未来 OI 发展会如何不得而知,是知识的不断迭代(如同某些玩笑一样,FFT 进入普及组),还是难度的不断提升(现在许多的选手实力已经说明这是必要的),只能靠未来的出题人和选手们去书写。