piggy 重生了,重生在了 CSP-S 初赛考场

· · 算法·理论

“如果这个知识点在深挖个十几二十分钟的,我这题就能 A 了……如果我的对拍程序不出错的话,我就能不爆零了……”

piggy 在 CSP-S 成绩出来的当晚,他躺在床上,自言自语。窗外下着小雨,小雨打湿了窗沿。他想着自己 CSP-S 爆零的成绩,想象着明天被教练紫菜的场景,想象着……额,以后就要 AFO 了,从此与 OI 无缘了。“或许,以后只能靠 whk 了……”

想着,想着,他很快进入了梦乡。他梦见,他重生了,重生在复赛考场上,拿到了 AK。半夜惊醒,他发现他的泪水已经打湿了半边枕巾。他又沉沉睡去……第二天一起床,他就惊奇的发现:

“我这是在哪?这里是……CSP-S 初赛考场……?难道,还有机会?……”

他使劲掐了自己一把——满满的疼,他差点叫出来。监考老师狠狠瞪了他一眼;他忽然意识到:头发花白,脸上布满皱纹,凶的时候很凶,高兴的时候很和蔼……这不是上次的老师吗!!他望向窗外,窗外合欢树的白色花瓣正掉落在窗台,排列成记忆中的初赛日期。背包里可乐气泡撞击瓶壁的节奏,“咕嘟咕嘟”,与他突然加速的心跳完美共振。这些都让他觉得:这是真的。于是,他下定了决心:“我绝对不能留下遗憾!”因为试卷是做过的,所以,对于他来说,这套试卷就非常简单,仅仅 20 分钟就做完了。他望向其他人,做完的同学极其寥寥,有些同学额头上冒出了豆大的汗珠。他无意识间在桌沿敲着 ST 表的板子,“咔哒咔哒……咔哒……咔……哒……”他沉浸其中,直到前排的考生瞪了他一眼,他才回过神来。

一转眼,两个小时过去了。piggy 自信地交上了试卷。走出考场,很多同学都开始跪地膜拜他,他感到十分幸福,甚至连爆零的失落都忘得一干二净了。连 chen_zhe 都投来了羡慕的眼光,他更加高兴了。

几个星期之后,他的 CSP-S 初赛的成绩出来了。屏幕上 98 分绿色字体刺得他眼眶发酸:这荣耀本该属于前世的那个疯狂卷题的深夜,属于那个在题解区研究到凌晨的自己。尽管没有拿到 AK,但是这个分数也能让他吹嘘一阵子了。他高兴地翻翻讨论版,刚打开洛谷,就有不少祝贺的私信,包括 ws23 也在膜拜他,这个平时高冷的学霸竟然也在祝贺并膜拜自己,一阵自豪涌上心头。窗外下起了小雨,piggy 望向窗外,一阵清新的感觉。

“终于……但是,复赛总是不一定的啊……这一次,是来之不易的机会;这一次,我必须拿到 AK!”

经过漫长的准备之后(毕竟 piggy 已经做过这套题目了),piggy 终于迎来了 CSP-S 复赛。他怀着一颗稍微有点紧张的心走进了考场,深呼吸几次,准备着,默念已经背过的代码。不知过了多久,随着“吁”的一声哨声,他打开了题目,开始写代码。但是,当他看到 T1 分明是以往某次 CSP-J 因为偷懒没写的毒瘤题时:

“这……这……这……好像不是那次的题目啊!?我……不会又要爆零了吧!!!啊——”

他差点叫出声来(幸好没有不然就会被监考老师紫菜)。他冷静下来,仔细思考着题目。这些题目,看似不同,实则似乎和前世熬夜刷的某些题目有些类似……看着看着,他突然有了想法,手指扫过键盘,for 循环的模版代码(?)如条件反射般涌出——这一看就是上辈子敲过无数遍的代码(piggy 此时心理:怎么这么熟悉啊)。翻到第二题,一看就知道是某年 CSP-J 的第二题,机器人移动的那一题。切了之后,他注视着第三题《火柴棍》,是要你用火柴棍“摆”数字,发现了不对劲:这次的题目好像……和某年 CSP-J 的题目一模一样??望着测试数据,那像极了在前世那个用火柴棍“摆”出“SOS”求救信号的深夜。

他赶紧翻到第四题,果然是那道熟悉的蓝题。他庆幸着,但是很快又回到了状态。这一次,他不能再马虎了。不然,等待他的就又会是人仰马翻——AFO。窗外下着小雨,不知道这有没有影响 piggy 的心情。

在仔细地思考之后,他终于想出了 T4 正解。他揩了一把头上的汗,发现他的头已经蒙上了一层“水雾”。“没想到,这么难……”顾不得继续想,他赶紧专注地写起了代码。结果,gdb显示的栈帧深度暴露出他递归改递推时的致命疏忽;那个本该用单调队列优化的转移方程,此刻正在第 114514 组数据上疯狂RE,直至比赛结束。他有些沮丧。他望向其他选手(作者注:比赛的时候这样是会被判为作弊的,请勿轻易尝试),有几位巨佬早已提前离场,有些同学似乎不想放弃,正在疯狂敲键盘。

结果,出门却又是一番风景:

旁边一个高个子的说:“今年 T1 怎么这么难,我感觉起码是绿啊,CCF 怎么回事。”

身边的矮个子搭话:“就是,虽然我切了 T1,但是 T2 我调了俩小时还没调出来,感觉 T2 评个紫还是没问题的。”

piggy 轻轻地“哼”了一声,立马找来了一阵询问:

“你怎么了,难道你估分 200+,不可能的事!”

piggy 笑了笑,头也不回的走了。这立马招来了一阵膜拜。“orz orz %%%”的声音在此起彼伏,在他耳边回荡着。“希望……我能够进入 NOIP 吧……尽管这是奢望。”

回到家,熄了灯,piggy 睡意朦胧,隐隐约约在梦里看到了那些火柴棍摆成了 AFO 的字样。他无意间看到了桌上的火柴,忽然意识到,重生的自己也不过是CCF命题者手中的一根火柴。

成绩似乎不太理想(?这还可以吧),320 分,T4 only 20 pts。他看着 CCF 官网发出来的成绩,又翻了翻 OIerDB,发现那里赫然写着:

姓名:***(已隐藏) 得分:320/400 本次比赛排名:7/25334

洛谷上的难度评定也是:

题号 T1 T2 T3 T4
难度 绿

piggy 此时一脸震惊。

而后不过几天,教练就来祝贺他,他进入 NOIP 了。不过,这旅程,必定充满着艰辛,路上也会有意想不到的困难。或许他能够成功,但是,更大的可能是淘汰——下次再来!

又努力一天之后,piggy 拖着疲惫的身躯走向家里。闭上眼,想着尚未解出的一道蓝题,嘴里默念着“如果没进省队怎么办啊QAQ……”当夜,他梦见自己站在领奖台上。台下掌声一浪接着一浪;但俯身时,奖杯倒影里却是无数个时空里的不一样的 piggy——有的在初赛考场痛哭,有的在复赛机房狂笑。原来所谓重生,不过是递归函数里一次偶然的栈溢出。

“就这样吗……就这样吗——就这样吗??”

猛然睁开眼,他发现这只不过是高烧 114.514℃ 的幻觉罢了。他的眼泪又流了出来……

他打开洛谷,在 AFO 之前,写下了最后一句话:

“人生没有容错机制的贪心算法;但这次,记得写一个带上记忆化搜索的 dfs。”

写完,他拿起桌上的火柴,“嚓”的一声擦着,然后把它丢进了小雨之中。蓦然间,火柴熄灭了。piggy 凝望窗外,久久不能自拔。

一分钟接着一分钟过去了,一小时接着一小时过去了。他又擦亮了一根火柴,扔向空中,任它在空中飘荡。火柴熄灭了,但 piggy 的眼前却浮现出另一幅画面——无数行代码在黑暗中闪烁,像星辰般排列成银河。他忽然笑了:“原来,我真正想要的不是 AK,而是这段旅程本身。”