若能遗忘
谨致此文。
2025.9.20 CSP-S1
考前心很慌,因为做了 SCP-S1 2025,荣获 66.5 的好成绩,感觉要被初赛涮退役了。借着考前两天的语数英课把 noip 辞典又看了一遍,权当安心。
早晨起来没带表,也没带耳机。平常从来没忘过,今天有点说法的。
周六上午把第五节课翘掉了,提前去吃饭。中午十二点坐上学校的小巴车去徐州。不知道为什么今年人这么少,高二总共就三个人,加上高一的也就十来个。2023 年的时候可是有两辆大巴车载着 70 余人浩浩荡荡的呢。
去的路上在午休,座椅很难受,头最开始靠着窗户的,但是车玻璃一直伴随着发动机在震,只好靠着座椅了。迷迷糊糊睡了十来分钟感觉世界一下亮堂了,一看天窗发现乌云暂时性的没遮住太阳。拿外套盖住了脸继续睡。后半程一直睡的不好,在清醒与梦境的边缘游走,交替感受着发动机的脉搏和座椅的冷漠。脖子落枕了。
一点半到了培栋,进了考场,神人培栋中学,把考场设置在食堂,然后安上泡沫隔板,梦回叮咚鸡时期了。白的灯光、白的塑料隔板、橙的板凳、灰的桌子。找到了自己座位,看了一圈发现没啥熟人后趴下睡觉。感觉像有人拿着锤子在我的肩膀和脖子狠狠地敲过一样。睡了一会儿感觉有点吵,睡不着,起来找了一圈看考场有没有钟,监考老师跟我说直接问他就行了,然而后来发现好像没啥必要。
试卷发下来之后,先瞄了几眼,发现选择题里考的 S 组格外得多,或许这是一种趋势了?翻到最后一面,怎么还有交互?难道要“它改变了传统题”了?
开始之后选择正常顺序做题,单选做的比较久,可能有十五分钟吧,然后开始读程序,第一个程序属实有点幽默了,0 秒猜出他想干什么,第二个程序疑似在整活,看了一会儿发现 guess2 是个类似于分块的做法,第三个程序怎么和 SCP 一样把答案放在选项里了,而且还那么容易选出来。做到这里问了一下时间,发现才 1h,感觉今年有点简单啊。看到第一个完善程序有点绷不住,怎么 CCF 这几年这么喜欢分层图,都搞到初赛里来了,第二个阅读程序仔细读了读,发现这个交互等于没有。这个选择很搞笑啊,怎么不用看懂程序也能上下文比对出来选哪个?
考场好几次笑出声。
做完还有 40 min 才结束,去洗了把脸回来涂卡,然后把答案抄在了准考证上。检查了一会儿,发现了两个低级错误,然后自我感觉十分良好,对 ak 很有希望,睡大觉了。出来一对洛谷民间答案,怎么才 81.5?愤怒了。阅读第二篇三个判断全部错光光了,笑洗了。又菜又自大。
收卷前 20 min 宣布修正试题,在第二个完形的 solve 里加了个 n, k,考场里在试卷的翻页声之后是浅浅的笑声,我找了一下 n 和 k 的定义,发现没找到,也没再管;收卷前 3 min 宣布修正试题,加入了 n 和 k 的定义👍,考场里充满了快活的空气,省里来的监考员在努力维持着秩序。传奇草台班子命题组,代码一股 AI 风,有神秘 modern C++ 风格和神秘注释,严重怀疑就是 AI 生成的,而且估计命题人只是看了一下感觉没问题就复制粘贴放上来了,连编译都没编译过。但是也不能说这是坏事,至少代码可读性比之前几年的强多了。
感觉周围人都考得好高,小学生没来 + 试卷利于学了 S 组知识点的选手 不知道会不会让分数线暴涨,不过应该是涨不到 80 的吧。
回去的时候依旧把窗帘拉上,座椅依旧很难受,后背都有点潮了。没带耳机有点折磨,也不能听歌,只能水会儿群了。看着车厢前面的红色数字钟,想着还有多久才能到。像在清醒着做梦。
回到班里收拾了一下作业就回家了,刚出教室门没走几步路就碰到了主任,问我为啥不关灯,我说我忘了,我确实是忘了,走到门口看其他班的灯都关着我才想起来。
附几张在学校拍的照片
该部分自第六段往后于 9.21 日完成,不是因为 9.20 日不想写了,是因为写着写着就到 9.21 了。
再见,CSP-S1。
2025.9.25 出分
81.5,没挂
2025.9.26 出线
优先晋级线 62.5,说明今年确实比去年简单不少
2025.11.1 CSP-S2
11 月确实是个好月份,11.1 CSP-S2,11.3 - 11.4 合格考模拟考,11.4 - 11.5 期中考模拟考,11.11 - 11.12 期中考,11.29 NOIP,真是轻松愉快呢。
10.31 日 23:15 上的床,翻覆到 50 左右才睡着。觉睡的不太安稳,六点半竟然被很小的动静吵醒了,完全没有我平常闹钟也叫不醒的优质的睡眠。
本来袁老师说要开车带我们去的,但是他这两天血压有点高,就改成坐火车去了。是的,11.1 早晨的火车,没有高铁,从 11.1 早晨到 11.2 中午没有一趟徐州和盐城之间的高铁,甚至连火车都只有一趟,这真的是江苏吗 /ll。不过没开车确实是明智的,早晨六点五十起来雾大到只能看见飘浮在空中的红绿灯,连对面的居民楼都看不清。前往火车站,顺便去 711 买了个红牛。
新沂的火车站是原来的老站,疑似有点时代的眼泪了,局促在一圈老旧的居民楼里,墙皮已经发黄,入口处的栏杆颤颤巍巍地抬起。下车背包,上二楼,楼梯被踩的发黑。离发车还早,何况火车晚点了 7 分钟,就找了个座位坐了一会儿。
检完票后沿着站台走啊走,站台的尽头淹没在大雾深处,看不清在哪里停留。嚼了个口香糖,迎风吹泡泡,再吃回来时吸进嘴里的是冰冷潮湿的空气。隔壁的铁轨白黑交杂,上面停着盖着灰布载货火车,然后在哨声中驶来的就是绿皮火车。我坐 17 号车厢,看到旁边缓缓滑过的 9 号车厢,于是发挥对匀减速直线运动的理解慢慢朝前赶 /fendou,结果看到 12 号车厢从身边漂过之后,后面没几节车厢了。正在纳闷之时,才注意到 13 号后面紧跟着的竟然是 17 号,而此时火车还未停下,于是回头又走了几步路才来到 17 号的车门前。怎么还带诈骗的啊。
靠着窗坐的,窗户边缘积了灰,我把头枕在窗帘上补了会儿觉,发现脖子很酸,容易落枕,于是等对面的人走了之后直接趴在小桌子上睡了。睡之前看了点板子和笔记,意念补了几道题 /fendou。火车开出一百里才发现并不是只有新沂有大雾,浓雾把半个江苏都裹在了里面。
大概 10:40 到了盐城,出站之后由于同学没打印身份证,走了两公里去找打印店打印 /yun。然后去了盐城中学旁边的肯德基,吃完之后趴下睡了会儿。睡不着,可能是不够困吧,脑袋里始终充斥着杂乱的思想,不过聊胜于无,至少趴了 40 分钟,醒来的时候感觉也不是很困。13:20 进了盐城中学,拍了几张照片就去排队了。13:40 开始进入考场。
进场依旧先改了键位,敲了个对拍和随机数据生成器,有一瞬间想着希望自己不要用到,不过转念一想这样说是不是不太好,万一是因为全都不会做导致用不到呢。然后趴了几分钟,忘了在干什么了,竟然到了 14:26 才想起来已经可以解压文件夹了。打开了解压密码,怎么是随机生成的,一点也没有文艺气息,差评。然后提示解压密码错误 😰,重新看了一下发现我把行末换行符也给复制进去了,然后手忙脚乱地把大样例全部解压到桌面了。
先看了看 T1,按理来说应该是简单题的,但是由于去年 NOIP 的惨痛经历我没抱期待。好像确实是简单题啊,直接上反悔就行了,但是仔细想了一下发现有 3 个部门导致好像不是很好操作,代码写起来好像比较繁杂。于是先手玩了一下样例,发现好像直接按每个人对三个部门的满意度中最大的那个排序,然后用优先队列维护每个部门最大的满意度,新加入人的时候判断一下把当前已满部门的学生顶出来是否更优,进行反悔就行。然后不负众望地假了。原因是按照优先队列维护最大满意度的话,有可能出现当前部门中最大满意度的学生的次选项满意度较小,而次大满意度的学生次选项满意度较大的情况,这样就挂掉了。
当时手玩 + 思考花了大概 10min,假代码写了 20 min,小样例一交是对的,大样例一测,错了。当时内心其实是有点崩溃的,把头埋在手里平复了一下心情,看着才三点十分出头的时钟,安慰着自己还来得及。首先手造了组小样例,但是没查出来错,于是决定写拍,暴力最开始忘判不能超过
于是改改,重新再对拍,本以为能顺利通过,结果拍了几组又错了。把样例抄了下来,还没抄完就意识到思路假了 /fn。现在已经三点半了,本来想打 200 的愿望变得好像有点不太现实。把 club.cpp 重命名为 club<sub>wrong.cpp</sub>,而今迈步从头越了。决定换个大思路来碰碰运气,发现有个
南方的天气本就暖和一点,一群人挤在机房里,二氧化碳伴随着键盘敲击声被吸入又呼出,再加上机器的散热,众人昏昏欲睡。眼见红牛不起效果,我决定去卫生间洗把脸,顺便想想怎么优化这个 dp。还没到四点,太阳理应还很高,但走廊与天桥却笼罩在一种温柔的落日余晖般的色调里,像是生的鸡蛋黄一样,走廊尽头的工作人员让我留下准考证,他好登记。我走的时候又进来两个小孩。
一趟厕所之旅给我的结论是这个 dp 我不会优化。三维的状态设计如果想优化掉的话必须要引入贪心,那样的话就与反悔没区别了,所以正解应该就是反悔,只不过我策略选错了。开始重新想思路,突然想起来最开始判断反悔是否更优时那个比较的式子,似乎就是决策对答案的贡献,只需要维护其最大值然后每次判断是否顶替就行了。这很容易证明,因为当达到
然而我在 11 月 2 日早晨想起来,当时忘把数据生成器的 T=1 改成 5 了,希望我多测清空得很彻底。如果多测没清空,不至于四个大样例都测不出来的吧。
这时大概16:26左右,事后看来,在如此若至的第一题上浪费了这么多时间,属实是很不应该了,但当时的我并没有多懊悔,而是在拿到 100pts 的踏实和欣喜后,感受到了巨大的压力,难以写完第二题的压力,不过那时我以为第一题必有蓝了,结果是我把简单问题彻底复杂化了。
T2 这道题感觉有点搞笑,怎么把这种弱智题放 T2,是弥补一下 T1 的难度造成的心理伤害吗?这不是一个二分答案 + 并查集判断是否连通就直接做完了。这个
17:30 往后往卫生间跑的一个又一个络绎不绝,离收卷还有一个小时的时候,明显感觉脑袋转不动了,或许是因为连续坐牢了三个小时,或许是因为心里的焦虑。总感觉一个小时好像很短,什么都不够做。好像确实很短,18:05 监考老师说离收卷还有 15 分钟前禁止离开座位,于是我决定再去卫生间洗把脸清醒一下。
外面天已经完全黑了,走廊尽头的志愿者喝了一声,让刚刚熄灭的声控灯重新亮起,途中经过 302 考场,灯光透过窗帘,薄薄地洒在地上,键盘回弹的声音从门口溢出,这就是谁的不甘与奋斗呢。风吹来,冷得我一哆嗦,月亮在雾里发着朦胧的光,边缘像是撕开的起了毛边的纸张。神秘盐城中学,厕所晚上竟然没开灯,有个志愿者开着手电筒进来给我吓一跳,回去的时候差点忘拿准考证了。
随着 18:30 越来越靠近,我心中的绝望越来越深,到 25 的时候,我思索着要不干脆直接放弃算了,于是先把注释掉的 freopen 反注释了。然而18:26,就在滚动滚轮随便查看 check 那一部分时,那行看过无数遍的 mon -= c[i] 荡起了新的涟漪:枚举S:1->(1<<k)-1 时,我的 mon 没有恢复最初传入的状态。手真的抖了,赶紧加了个 tmp 变量,改完是 18:27,编译完打开命令行,第三个大样例的输出终于对了,然而跑了 1.15s,此时的我没法想那么多,把并查集前的 memset 去掉,重新编译,跑了 1.1s,只能相信 CCF 神机了。关掉编辑器,打开文件夹,此时 18:29 了。手连按了两次才按出笔芯,记录下字节数,静坐 10 秒后,电脑锁屏了。
劫后余生,真的是劫后余生,本来都要放弃了,结果在离收卷还有 4 分钟时查出错了,没想到最终还是在多测没清空(mon没恢复也算一种多测没清空吧)上浪费了那么多时间,前两个大样例也是有点搞笑的,竟然连多测没清空都测不出来,右边小朋友问我最后调出来 T2 没有,左边小朋友问我 T1 怎么做的,右边的说他是 dp,不过只能拿 30 分(或者 60 分,我忘了)。左边的问我难度大概是什么,我说蓝绿紫紫吧,不过 T3 T4 我都没看,瞎猜的,另外我比较菜,难度容易高估。和右边的右边的小朋友交流了一下怎么做的,才发现我 T1 彻底想复杂了,既然每个人都至多被加入一次,直接按照最大值与最小值之差排序就做完了,或者直接先把所有最大值加进去,再考虑删除哪几个超额部门的学生能使答案最大也做完了,本来我不太相信的,因为我最开始想的就是这种做法,但是感觉正确性不太对/不好写代码/可能会 T,反正总有一万个理由,但他竟然过大样例了,还跑得飞快 /jy,这么看来 T1 好像是个黄啊。
本来想把总结放在最后写的,不过后面的事与我在考场上的表现几乎无关了,这次 CSP-S2 说幸运也幸运,说背运也背运。T1 初见就找到方向了,但兜兜转转竟两个小时才处理完,一方面是更难一点的题见多了,养成了思维定式,一上来就想反悔,根本没考虑朴素的贪心,也没有认真分析性质;另一方面是不带脑子做题,假如最初制定反悔策略的时候选择认认真真推式子,而不是凭印象与感觉做题,是不是一遍就能写过了呢。T2 主要是对多测清空的弦绷的不够紧,或许也有那部分代码是后来加上去的因素,同时撞了南墙也不回头,调不出来就一直调,也不写后面的部分分,万一 18:26 时没查出来错呢。由此可以看出,用心打的模拟赛次数远远不够,对考场心态、策略、时间把控有很大欠缺。感觉这场完全没有发挥出自己水平,代码的小错误太多了、浪费的时间太多了、应得未得的分太多了,本来应该可以两小时处理完 T1、T2 拿个 100+100+eps 爽爽蓝勾的,现在却只能 100+72+0+0-eps 跑路了,或者说这就是我的真实水平,至少是赛场上的真实水平。
找那么多借口干什么呢,菜就是原罪。
万幸的是,第二题的错误最终还是调出来了。在调出来前从未想过会有个这么严重的错误,因为已经过了两个大样例了,假如没发现这个,估计会挂到只有 40pts。
出考场之后问了一下 zzh 和 gdz,都做出来 T1 了,遗憾的是 gdz T2 只拿了 k=0 的那档分,zzh kruskal 板子没调出来爆零了,祝好,zh 拿了220 dsa /bx /bx/bx,dyw T2 正解没调完,只拿了160,不过熨斗测出来 TJ rk47 /bx/bx/bx,怎么就我最废物啊 /ll。看着洛谷和 u 群里的讨论,慢慢接受了自己与一道黄题智斗了两个小时的事实,怎么会是呢?T2 看大家讨论的时候忘了我的二分没时间去掉了,还说怎么我正解跑了 1.1s /ll。
晚上在学校对面找了家拉面馆吃,牛肉面竟然才 10 块钱一碗,端上来肉竟然还挺多 /jy,一楼没有座了,于是上了二楼,墙上贴了句“非清真食品请勿带入本店,谢谢”,女主人端着牛肉面上来时带着黑头巾。在二楼我们谈论着做法与分数线,虽然这些与我们的关系已经并不大了,老板家的小孩跑下楼梯,嘴里大喊着“妈妈二楼太吵了”,于是我们笑了。
坐我爸的车回的新沂,预计到的时候都 10:08 了,就跟班主任说了一下大概率赶不回去了。高速上有三四公里的路段起了大雾,像是一团云一样被风吹过来把车裹住,然后又被急驰的车撕开,只能看见前面车的双闪忽明忽暗。整条路上的雾也不少,指示交通的激光在其中变换着颜色,照亮光路上的水汽,像霓虹。在路上就在写游记了,本来想着 11.1 给写完,怎么洗漱完出来已经 11.2 了。
期望 100+72+0+0=172pts,未免有些意难平。不过我可能是众多抱有遗憾的选手中最幸运的那一个,幸好这不是 NOIP,希望这不是 NOIP。
再见,CSP-S2。
11.5 出分
100 + 80 + 0 + 4 = 184pts,T4 竟然真有数据点答案是 0 /jy
NOIP
考前五天预感到自己拿不了省一了,心态不是很好。不过还是不认命,把大号签名改成了 一个人可以被毁灭,把小号签名改成了 但不能被打败,以此激励自己。谎话说多自己都信了,考前一天我真以为自己能省一。
11.28 号早晨把手机和电脑带入学校了👍,绕过楼梯看到门口站着一排人,一看才 6:42
不是,班主任难道不知道数学老师在班里公布了推迟五分钟到校吗?
上午三节数学课 + 美术课 + 信息课直接爽爽玩五节课手机,中午翘了回家吃饭了,早晨请假时班主任鼓励我好好发挥,中午出校门路上碰到数学老师从校门查完岗回来祝我马到成功。吃完饭睡了个觉。然后前往高铁站。在新沂去徐州和徐州去南京的路上补了点题单,学了个整体二分。
早晨我妈让我带一件绿色的 T 恤留换,说绿色是我的幸运色。
在徐州高铁站准备检票时,太阳隔着巨大的穹顶审判着下面如蚁般攒动的人群。
到了南京站,本来打算坐地铁,但是 gdz 手机里没有支付宝,我们就改成打出租车了,教练竟然带我们往市区方向走,我说不是往江宁区吗,他带着耳机好像没听见。然后上车之后说出目的地成功被撵下来了。重新换到前往江宁区的队伍里,路上堵了半个小时,在路上看了一下 排列计数的 dp 方法,不过没太看懂。
到了酒店,仍然住的汉庭,两间双人房,我们三个人把两个床拼在一块儿睡了。那个床原本是固定住的,但是钉子经过我们的一番大力移动,被从墙里薅出来了,我说我坐在床头的时候什么东西在硌我的腿,还把我的裤子划破了。我睡在正中间,左边右边被子各盖一半,直接拼好被。晚上把模拟赛没补的题看了一遍,题单过了一遍,重新读了一遍四个 tarjan 算法,把模拟赛的笔记读了一遍,然后已经 22:45 了,被迫睡觉,订了个第二天早晨六点半的闹钟。感觉 noip 一等势在必得。
酒店的镜子有点好看,照出来的我挺好看的。
晚上点的回味的鸭血粉丝汤吃,吃的有点撑了。送东西的小机器人挺有意思,就是走的太慢了,给我从一楼到五楼坐电梯送个饭送了半个小时。喝了包蒙脱石散以防万一。
11.29 早晨五点就醒了,我还以为六点半多了,拿起手机一看才 05:03,翻个身把被子扯了扯继续睡。六点左右又醒了,并且不太能睡着,起来上了个卫生间然后强迫自己闭上眼睛,再睁眼就是闹钟的嘀嘀嘀了。收拾了一下东西,大概七点的时候出了房间门。怎么蒙脱石散不管用啊。
餐厅也在五楼,简单吃了点,拿了包咖啡用牛奶泡着喝了,感觉还是有点困,就趁他们还没吃完趴了一会儿。
打车前往南航,教练打成北门了,绕着南航走了一圈才到近西门,差点要赶不上了。最终还是在 8:02 成功进入了 10E 考场。然后去找了趟卫生间,怎么还得下楼才能到男卫生间,有点过于耗时了。前 30min 试机时间依旧改键位,顺便写了个对拍和极其简陋的手造 selfEval。为什么 C++14 标准里没有格式化字符串?
开 T1,感觉是个很糖的贪心,随便打打背包 dp 都有 65pts 了。本着前几次比赛的经验我决定从最简单的思路开始想,想了几个与平均值有关的贪心感觉都不对,然后开始考虑反悔贪心,发现仍然不能在较小的时间复杂度内保证正确性。看了一眼时间发现 8:46 了,难道说又是 edit 状物?不过这个题看上去并不是那么困难。随便翻了一下后面几道题,发现是 贪心 + 计数 + 树上问题 + 序列问题,回来重新看 T1,一低头看到自己的前面几个假思路,突然想到把他们综合起来不就对完了,首先在等体积的情况下,更大的一定不优,这意味着
听说 T1 大样例很水啊,那我是不是连唯一会的一题也得不了多少分了。
然后想了半个小时的 T2,感觉没啥思路啊,看不出来任何性质。于 9:50 左右决定去看看 T3,T3 看上去比 T2 和蔼多了,感觉是那种努努力就能做出来的题,猜想一个子树内的权值应该是连续的,那么问题就是究竟是从哪个数开始,猜测一个子树要么是牺牲自己来使父节点的答案最大,要么是直接自顾自地为答案贡献 mex。手玩了几个样例,发现好像有点搞头,好像可以设计一个当前节点对父节点贡献的 dp,但是怎么转移和计算答案我不会,推了一会儿好像始终会重复计算。时间来到 10:20。
又去做了一会儿 T2,我仍然相信 T2 是很容易的,只不过是我太菜了做不出来。难道不是吗?想到我昨天看的那篇文章,不断地尝试设计 dp 状态,然而都无果,而且是毫无思路的无果。只能再去想会儿 T3,发现这个从哪里开始的决策好像和当前节点的深度有关,但是我仍然不会统计。
11:00 了,距离考试结束还有 2h,我决定先打点部分分再说。写了个 T2 的暴力,然而发现好像并不是很好写,写完之后假了,调半天发现我排序的时候忘记了判断
接着去写 T4 暴力,我直接枚举区间长度,怎么输出的是 0 啊,哦对对对
此时 12:00。还有一个小时,我决定 all in T2,然后怎么也做不出来。12:45 的时候绝望了,决定再捞点部分分,发现 T2 A 性质好像很简单,直接输出
把巧克力吃了,不过不是为了补充能量,而是减轻焦虑。
12:56 的时候把字节数抄了下来,然后关掉编辑器罚坐。
[0, 100] + [0, 24] + 0 + [0, 5]
这就是我 OI 生涯的最后一场比赛。
出考场的时候觉得有点行尸走肉了。考试的时候我前面的小朋友一直在用力敲键盘,不知道是在给自己自信还是破坏别人心态,还用力地甩着头发,有点担心他脑袋不会晕吗,不过并没有影响到我;右边的老哥间歇性地敲代码,让我以为这场确实很简单,只不过我菜完了。出了考场拿到手机,跟几个朋友说自己 100 + eps 要完蛋了。这个时候脑袋里其实是放空的。下了楼,出考场,看着楼前围着的家长,温暖的阳光从玻璃门处撒进大厅,我想:“我退役了”。不过也仅仅是想,就像一个人对另一个人的例行通知。在大招牌那里合了张影,我竟然还笑得出来。碰见了 mqc,他也没做出来 t2,这时我看了一下 u 群,发现有人说是黄紫紫紫,我以为是刚考完的报复性评分,也没太在意,只是当了个笑料跟他提了一嘴,我们两个都觉得不太可能。
然后扫了个共享电动车到北门找教练,吃了碗拉面,我没啥心情,只挑了几口。然后洛谷上有题了,黄紫紫紫。u 群很多人都没做出来。这就是区分度啊。成功地将我这种滥竽充数的傻逼区分了下去。
一路上一直在盯着手机,不论是坐地铁还是高铁检票还是上了高铁。看着窗外疾驰的平房,没心情听歌,只是一味的水群,看大家怒喷这场 noip 的难度,看要退役的人不停地发表情包,我想了一下,我好像也是他们的一员,然后点了个表情包后面的 +1。我也不知道究竟有什么好水的,但确实浪费了一个下午,好在再也没有什么 OI 需要我去赶时间了。到徐州的高铁快要到站时,我把 uoj、la、xzoier 的群全屏蔽了,改成跟朋友聊会儿天。
在南京准备上车的时候上了一下洛谷,看到改成黄黑黑黑了,我不知道应该是什么样子,以我的实力不配评判,我也不再关心究竟是什么样子,从 13:00 以后,OI 的世界与我无关。
在徐州换乘等高铁的时候竟然碰见了班主任,我还以为是我看太久屏幕眼睛花了,仔细看了看确实是班主任。跟他打了个招呼,看他的嘴形好像本来是要问我考得怎么样,不过改了口形问我是来还是走,坐几点的车走。
然后坐上了徐州到新沂的高铁,仍然是复兴号,像 T1 难度颜色一样的灯光从手机的屏幕反射进我的眼里,不禁令我想起第一次打 CSP-S 去南京和回南京好像也都是坐的复兴号。始于斯,终于斯。
qq 终于平寂了下来,我放下手机,看着天花板上嵌着的屏幕,里面在放什么我已经忘了,连与什么有关都忘得一干二净。此时我终于知道为什么我之前一直在看着手机,即使走路也不放下。浪潮一波又一波地涌来,而我无能为力,越想控制住涌得越厉害。然而视线并没有模糊,因为赶在模糊之前已经流下,滴在衣服上,我也懒得擦。我也不知道我在哭什么,那时我的脑袋里好像没有任何关于退役啊或 noip 的东西,心里也没有任何情绪,只有纯粹的心悸和泪腺的生理反应。我重新拿起手机让朋友陪我聊天。
以前的三年和最近的两天里,各种细节纷至沓来,光怪陆离,淹没身边的一切。
出高铁站时正在日落。没人来接,打了个车回家。到家之后发现猫把猫砂盆搞倒了,猫砂撒一地。
出简单一点的话,或许可以省一吧,又或许即使出简单了,我也突破不了 200 呢。
一切的结果其实早已注定,我也早已知道,明明能改变,却又不会去改变,这是不是也是一种不可改变。
原因固然清楚,不过此时再说已经没有意义了。
不是天要亡我,是我自食其果罢了。
到家之后不知道要干什么,于是打开电脑写游记。
AFO
在 noip 考前曾幻想过无数次最后我坐在电脑前写游记是什么样子。
还记得四年级的时候 python 刚刚爆火,有个机构找我爸推销课程,带着我试上了一节课,当时学的好像是 turtle 吧,我说这玩意儿真无聊。忘了是什么契机了,后来买了本《python 从入门到实践》,自己对着电脑和书学。那时用的是摆在楼梯一侧的 Windows 7 的台式,是姑爷爷不要了送给我的,我在上面学了一天,也没学会怎么用 Geany 新建一个 python 类型的文件。五年级的时候在家里的笔记本上用 VMWare 装上了一个 Ubuntu 的虚拟机,六年级的时候换成了 Arch Linux 和 i3wm,编辑器用的是 vim,后来由于 vim 在滚屏的时候容易出现乱码残留在屏幕上,换成了 neovim。当时装 arch 好像装了快十遍吧。六年级升初一的暑假有了属于自己的电脑,装了个 arch 和 windows 的双系统,装 arch 的时候不小心把 windows 给抹掉了,还是后来重新刻的 windows 盘,这就导致我有两个 Microsoft 的账号。上初中之后逐渐忙了,在初一升初二的暑假放弃了 neovim 投奔了 emacs,理由好像是一直看有人说 emacs 比 neovim 更强大,然后把终端换成了 st,桌面管理器换成了 dwm。初二升初三的暑假又用上了 Hyprland,唉唉 wayland 一堆 bug 到现在还没修好。
上高中之后重写过几次 emacs 配置,不过没怎么大动过系统了。小学的时候自己写些 python 应用,初中被我爸逼着重新拾起了 C++,考了级。初二的时候听说有 CSP 和 NOIP 这东西,我和我爸都认为我碰了这么久的电脑,不借题发挥一下可惜了,然后开始接触 OI。初三的时候第一次考吧,初赛比晋级线低了 0.5 分,好在吃到了奖励名额,喜提 CSP-S 2023 60 pts。那时候连普及组算法都不会,线段树啥的更是听都没听过,刷题更是用的一本通的简陋网站,后来用的是 LeetCode,可能这就是小县城吧。2023 年 2 月 25 日注册了洛谷,提交了 P1223 这道题,应该是因为一本通吧。2023 年 9 月 22 日,通过了在洛谷的第二道题 P1001。绿名、绿勾、橙名、蓝勾,时间转瞬即逝,好像在我退役后的第一周里,就能红名了。
一个人的人生轨迹,就好像是被一些偶然的事件牵连起来,环环相扣,但凡有个环节偏移一点,滋养出来的人就不是为我们所熟悉的那个人了。如果当时没有上过那节试听课,可能就不会买那本 入门到实践,可能也就不会迷上网络,眼界也不会开拓,文化课成绩不会那么好,不会接触到信息技术这一行,不会碰到 OI,不会接触到竞赛,不会有数学作为优势学科,不会接触到 MO,不会进入最好的那个班级。这一串链节里面好像真的每一步都紧密相关,但凡缺了一步我就不是现在的我。这样究竟是好还是不好呢?
笔者还没考过高考,无意在此总结自己的文化课生涯。于是我只能问,OI 到底给我带来了什么。到底是文化课的优秀,还是文化课的退步。Away from oi 之后,究竟是 bring me new life,还是 take my half life。我也不知道。
之前想的好多事情,等 afo 之后要做,但是当我拿到电脑启动 chrome 之后,第一个输入的网址还是 luogu.com,即使从 2025.11.29 13:00 起,我与 OI 再无一丝瓜葛。
你 AFO 了,听上去好像只是一句通知,但是到目前为止,我还没有领会到它的含义,也并不知道还要多久才能领会到,不过肯定不远了。现在去回想昨天晚上过着题单上的题,似乎惊觉往事历历已经年。经过三年的 OI,虽然中间划水的时间加起来可能有两年之久,仍然很难想象如果再也碰不到信息,我的生活会是什么样的。在从今往后的人生中,或许不会再碰 OI,或许不会再碰 emacs 和 arch,或许报考专业的时候也会选择避开计算机相关;或许正相反,上大学之后接触 ACM,用 emacs 和 arch 的环境来做笔记,选择计算机相关作为人生的职业。
黄色的树林里分出两条路,
可惜我不能同时去涉足,
我在那路口久久伫立,
我向着一条路极目望去,
直到它消失在丛林深处。
但我却选了另外一条路,
它荒草萋萋,十分幽寂,
显得更诱人、更美丽,
虽然在这条小路上,
都很少留下旅人的足迹,
虽然那天清晨落叶满地,
两条路都未经脚印污染。
啊,留下一条路等改日再见!
但我知道路径延绵无尽头,
恐怕我难以再回返。
也许多少年后在某个地方,
我将轻声叹息把往事回顾,
一片树林里分出两条路,
而我选了人迹更少的一条,
因此走出了这迥异的旅途。
无论你喜不喜欢听,我的故事在这里就结束了。虽然很不愿意让 NOIP 2025 成为我 OI 生涯的句号,但是请原谅已经高二的我真的没有勇气了。这就是 OI,这就是它的特色,或许也是它的魅力吧。
本来在退役前攒了很多话想说,退役之后好像一点也想不起来了。
本来想着片尾语用 “若能遗忘,若能原谅” 的,不过好像太伤感了。AFO 倒未必是件坏事。
彼时我已苍老,如今我风华正茂。