2023 World Final 真·退役记

一曲新词酒一杯,去年天气旧亭台。夕阳西下几时回?
无可奈何花落去,似曾相识燕归来。小园香径独徘徊。

  2018,symbol:“去实现你未完成的梦想。”

  2019,左左:“把 final 进了再说。”

  大概是有了这两句话,才真正意识到 XCPC 不比 OI 轻松,才坚定了本科继续打比赛的想法。
  即便去掉高三那也有 6 年 OI 了,经此一役,又不知道竞赛之路还有多长。但是长点好啊,中学的我太菜了,总算是在大学练出了个人样。

  随着无人之境在大三出线,队友各自找实习和申请升学,我也意识到这条路很快就要走完了。只是一次又一次喊退役,又总是因各种原因出现在各种赛场上。只要这个 WF 不来,我们依然都还是选手身份,即便我们都毕业两年了,成为社畜和科研狗了。

46th World Final

谁研二还要打 final 啊~
——2021 EC Final 退休游记

  一语成谶。
  2022年,无人之境在大四毕业的暑假捡漏出线,当时意外得很,却也没放在心上,一笑了之。人都毕业了,这比赛还能打吗?

希望孟加拉还是能去线下。
——2021 EC Final 退休游记

  一口毒奶(x
  2022 年秋天,45th WF Dhaka,因为疫情原因我们无法一起出国,遂弃,于是捡漏捡到的 46th WF 就成了万幸。

  队友们都进公司工作了,拿着高薪却也繁忙。我继续找了个 phd 读,事情不比上班轻松多少,也要不停地读论文想题目,还有一大堆研究生要干的杂活。就这么过了一年,没有训练,偶尔打打 cf 或者 at,还有些 bytedance 清华营之类的,似乎离竞赛很遥远。
  zayin 好像在坚持打 cf,他还离竞赛很近,我有点不知道怎样才能达到他的状态,但更不确定我想不想要这个状态。我总有太多想做的事情,把自己标榜为学术人之后,空闲时间更想拿来读自己感兴趣的 textbook 和论文。

  2023 年 9 月,phd 二年级,开始当 hku 教练,要出校队选拔题、安排日常训练、排赛站、带队去比赛,一下子又离竞赛很近了。
  46th WF 也终于敲定时间地点,11 月在埃及沙姆沙伊赫,和 47th WF 合办。那么康复训练就张罗起来了。
  教练正在热身
  能明显感觉到虽然思维能力这么多年已经练出了成熟的下界,但是码力和反应力都在下降,签到题变得磕磕绊绊,老套路开始生疏,例如长链剖分都需要重新复习好一阵子才能写了。在训练中常常被 carry。
  说实在的到了后期,这个比赛获奖对我们有用吗?没有,拿牌了队友不会升职加薪我也不会多中论文,垫底了队友不会被开除(pony.ai 除外)我也不会被退学。于我而言,这是为了体面地把一件事做完,好聚好散,风风光光。算法竞赛好玩,最后再玩一次。
  所以我们也没有定宏伟的目标,我们就是来旅游的,我们只要能把实力发挥出来,能到哪里就到哪里,拿牌捧杯的任务那是 jiangly 他们的(

  基本上把机票签证全部安排妥当之后——巴以冲突爆发,WF 因安全问题延期。好好的一届 WF,遭受疫情和战争双重背刺。
  康复训练随即停下脚步,退役时间再推半年。
  抢 uo 特价机票,计划 4 月跟小付去关西玩。
  2024 年 1 月,宣布改在 4 月卢克索,正好撞上关西行程。所幸后来看日程安排,关西行程仅冲突了官方旅游和华为挑战赛,遂决定翘,直接来个 10 天小长假,来个关西飞埃及的半球飞行。
  康复训练在过年后重新开始。这几场用区域赛和 ucup 来练,这是当下为数不多的优质题源了。想刷点 WF 真题,毕竟一般来说 WF 整体难度比区域赛高不少,没有弱智签到,简单题都会很繁琐。但是近几年的 WF 题大家多多少少都看过做过,只剩 44th 的 WF 邀请赛可以训练,但这一场反而也是签到居多,打下来还不错。
  事实上延期的这段时间战争并没有消停,反而愈打愈烈,更多国家下场,更多区域开打,临近出发时,欧洲和中东形成了一条由北至南依次是乌克兰、约旦、加沙、红海、也门的封锁线,航班过去如同穿越火线(x
  老板:为什么你们疫情不敢去,现在战争反而敢去了?

  在关西愉快地玩耍了三天之后,4 月 15 日跟小付从 KIX 分别,她 KIX->HKG,我 KIX->TFU->CAI->LXR。
  在 TFU 满怀期待即将登机时,一封 LICS 拒信突如其来,如地震般几秒钟摧毁了城市。至今手上唯一一篇真正的学术作品而不是灌水,唯一一篇把数学玩成工艺品的,唯一一篇理论 CCF-A,phd 前两年仅剩的发表机会,唯一一篇胜券在握的文章,死了。
  被一个垃圾 reviewer 搞死了,他给个 borderline,原因是我们工作量太大,25min 的会议 pre 不完(这nm是 review 意见???),希望我们把两条主线拆成两篇并投 journal(他就没懂我们的工作重点就是 bridging 这俩主线,拆nm呢)。我们商量一致决定 rebuttal 对他的意见略写,毕竟有字数限制(Ondrej 老师:如果我们略写,那 pc 也会自然地忽略掉这个 sb 意见,但如果我们详写,pc 就会觉得是不是我们心中有鬼,就会反过来觉得这个 reviewer 讲得有道理了),结果最终 comment 说我们不重视他的意见。。。他似乎就是 pc,其他俩人都评价不错就这人有牢骚,最后就是他给拒了应该。这种人应当祭天。
  虽然也不是他全责,邮件里说今年非常卷,要三个 accept 才能中,我们有一个 weak accept 喷 writing 的,那其实也是没戏了。(喷 writing 那还是我的锅啊
  跟大家达成一致转投 SODA 或 NIPS,心情好了一点,起码 CCF-A 还是有希望。
  TFU->CAI 这段就直接昏睡了,并没有干活的欲望。讨厌这种国际航班凌晨两点喊人起来吃早餐。
  飞机的航线经过黑海和以色列附近,蹭过两大战区(x

  在开罗机场体验到了埃及人蹭脸要小费,是先跟你说免费帮你然后反口要小费的那种。我坚持不给,但也变得小心翼翼,避免产生给人帮助的机会。
  Ondrej 老师认为 sampling 的文章应该在这篇 counting 中了之后再投,于是乎 KR 的 ddl 也没了,繁重的代码实现任务突然轻了一半,也就不想干活了(x

  到达卢克索已是 16 号下午,华为挑战赛结束,跟队友去补拍照片。

如果真的能去埃及,看看会不会出现“hku 教练代表 sysu 参赛”的怪事hhh。
——杂写

  跳反!我的身份牌是绿的!(大雾)

  尼罗河边的五星级酒店表面还是很豪华的,就是有蚊子苍蝇。饭菜味道挺好,但是口感真不咋地,烤鸡硬如柴,煮牛正常发挥,烤鱼柳好吃但是鱼柳毕竟不是新鲜鱼,馅饼也硬。香瓜倒是非常甜。
  这个国家很神奇,正如地图所见,只有尼罗河沿岸是绿色的,离开河流就是黄色的。热带沙漠气候展露无余,闷热,阳光毒辣。整个城市显得贫穷,房子都很破,马车汽车摩托车一起在街上跑。仅仅是在这个城市生存下去已经值得敬佩了。
  以为时差倒得挺好的,结果还是 10 点就昏昏沉沉了,第二天 7 点就醒。
  早餐的煎蛋非常好评,蛋液里加了番茄甜椒蘑菇,很清爽。早餐的芝士品种巨丰富。
  Bill 主席活像个老顽童,蹦蹦跳跳情绪高昂。热身赛入场搞得像运动员入场一样,很有气派。
  这三天午饭都是巨硬巨难啃的三明治。倒是生蔬菜不错,啃生黄瓜挺清爽的,生胡萝卜的辛辣味很提神。
  热身赛,我写了两个签到题,邓老板写了加逗号题,邓老板和 zayin 一起搞了个神秘的图论题。算是平平稳稳地度过了。后面去找 hku 发现他们做了概率题,我们的概率推得还是菜了一点。

  到目前为止并没有感受到这是 WF,仍然觉得这不过就是一场普通的比赛,只是仪式多了些罢了。
  可能平平静静才是好的状态吧,享受比赛,痛快解题。

  第二天的运动员入场更加流畅了,坐在里边看各校校徽,才终于有了一点“代表大家出战”的感觉。
  倒数结束,闹腾的会场迅速静了下来。
  读完 P 题,队友在推 S,突然对面桌 Oxford 大喊一声 yes,拿下全场一血,场上响起掌声。
  赶紧跟榜去读 Y,但是脑子乱了并没有思路,觉得连续两个子串相同好神秘。
  zayin 猜了 S 一个结论:去到河对岸的一定是个连续区间,并以此得到了一个 $O(n^2)$ 的 dp。但是并没有人做 S,还是先签到吧。
  zayin 看了 Y 和 P 都秒掉了(感受到我降智严重),邓老板看了交互题 W 开始尝试,我把期望题 Q 也干掉。
  W 题降智了好久,一开始是读错题以为它所有回答都是正确的,还在想抄样例的题怎么还不板刷,后面想着怎样只用 0 和 1 做询问,几乎是列举完所有只有 0 和 1 的询问方式了才意识到这是不可能的,于是把第五个询问改成 1 2 3 才把这个题干掉。
  签完 4 个题,一个半小时,排 20 上下。
  接下来跟榜开 T 和 U。T 一开始 zayin 想直接设两个金字塔底边的点为 $(x_1,y_1), (x_2, y_2)$ 然后大力推式子,我按住他说应该可以将军饮马的,果然画了画就是把金字塔侧面折平然后塔顶连线,讨论侧面往哪边折即可。U 我和邓老板讨论出在 4c 充当四个角的基础上用 8c、4c+2s、2s 来扩展,于是双双冲,但是双双失败。U 在不断地 wa 中补充了 6c+2s 和 4c 两种情况,变成了只用 4c 和 2c+2s 扩展,确信已经很难更优了,但仍然 wa。T 调了许久找不出错,于是喊邓老板帮忙看,我上机测 U 小数据却也无果。期间 R 和 V 都有些提交了,但不多,我们决定还是先调完这俩板刷题。最终,T 发现金字塔可以边相交,补上漏了的等号过了,U 一语点醒发现纯 8c 会自交,补个特判在 240min 过掉。
  花了整整四小时才签完到,却也封榜了。
  S 还是没人过,不敢写。邓老板发现 X 是个大模拟,慢慢写着。zayin 把 V 转换模型后发现是问凸包是否交两个正半轴,随即开冲,但不幸最终没调完(由于提前开赛,最后一小时 zayin 看错了时间,在悠闲地 debug,直至耳边突然响起“10min left”),遗憾 6 题离场。

  心里也跟着像烂掉了一样,尽管周围的人都在说这不算烂。
  确实,后面滚榜发现好多强队和暴发户都是 6 题甚至 5 题,讲道理这些恼人的分类讨论和构造,要快速写对它们也绝不是一点本事都不要。但是要得不多。怎么说这两个题也是最后被板刷的题,卡了整整两个半小时,怎么看都是一种罪过。
  我们明明手中还握着 V 和 X,甚至这个 S 出场后跟 HUST 讨论了一下,我们都猜得差不多了。把能做的都做完,这不会有遗憾,但是亏题,会有巨大的遗憾,何况这还是最后一次比赛,是 WF。区域赛亏题了,还有下一场区域赛证明自己,WF 亏题了,没有下一次 WF 了。
  不停地反省 T 和 U 有没有机会做得更快一点。T 最好是让几何选手邓老板早些来看代码,但是邓老板和我一直被 U 关着。我们推出最优策略也不算慢,但是一直没发现纯 8c 是个 corner case。我不是没机会发现它,我手玩了 4c、12c 和 16c,就是玩不出 8c,也觉得不对劲,但是上机一测,4c、8c、12c、16c 全跑出来了,我的第一反应是:这才合理,这才对称而优美,从来没怀疑过代码给出的 8c 的解到底正不正确。
  有时候也做梦,如果开场把 S 莽过去了,是不是就可以解锁 WF 歪榜的成就,凭一己之力把大家都关起来,然后我们就拿牌了(x
  但更多的时候是觉得,我们真没太多机会把这些题再做快一点。这样反而还宽慰一些,不是失误,是实力就如此。
  也在想如果是两年前我们所谓的“巅峰状态”,能不能做得更好。大概率是能的,那时候也许知识储备不够,但思维敏捷度和手速都比现在高,也比现在勇敢,会尝试榜外的题,会在卡题时分一条流水线出去开新题。这次的 WF 并不如想象中那么难,难度接近国内区域赛,穷游中国式的打法(依靠前中期手速)仍然有很大的发挥空间。但是没办法啊,上班的上班,科研的科研,毕业了真不可能还像本科一样一周四训。我也羡慕有些老人队真的还在狂训,但是我菜啊,我做科研的题都不够时间。
  所以,就这样吧,本来也是来旅游的,本来出线名额都是捡来的。
  并列排名也不算难看,能混到 26,拿来骗骗外行人还是可以的。

  后面去了帝王谷附近颁奖,真是大漠戈壁。心情本就低落,端上来的烤肉又不出所料地烤柴了,这顿饭吃得一般。
  在这里才开始关注前排。原来 MIT 和 PKU 打得如此焦灼,见证 jiangly 捧杯,所谓“jiangly 时代,沸腾期待”,时隔 13 年再次由中国捧杯。46th 和 47th 中国都各有三个队进牌区,PKU 更是一冠一亚,可以说中国的战绩相当辉煌。果然是当年把 IOI 改造成 CNOI 的那帮孩子长大以后,也要在 ICPC 掀起一场革命,我感觉革命已经悄然开始了。
  以及听闻了不少笑话,比如 47th 的 MIPT 把 infinity 写成了 infinitiy 痛失冠军,比如邓老师望着 jiangly 接受采访的白学图片。

  后面的两天,一天去了 Luxor 博物馆,一天在开罗逛了埃及博物馆和金字塔,就溜了。再次在飞机上被凌晨两点半叫起来吃早餐(怒

退役

  最终结算,13 年。我才 24 岁,我可以说我大半辈子在玩算法竞赛(
  其实现在越来越多的老古董都是 phd 好高年级了仍然在打,得益于大家发现规则其实是每个人最多参加五届而不是入学起五年,以及被 covid 影响的三年有优惠政策。还有好多即便不是正式选手了,但是打星参赛、出题等的强度都不亚于正式选手。所以单纯比时长好像没什么意义,他们才是真爱粉。
  原先以为竞赛打这么久会很耽误他们的科研,后面才发现这些人是竞赛科研双丰收,顶尖赛场的颁奖台上有他们,各种顶会里还是他们,就算不是顶会也是很有意思的工作。
  而我现在是在两手空空、没有任何发表的状态下,来告别。
  很难不加剧愁怅啊。。。

很多觉得自己“喜欢”这个比赛,一开始并不知道这个比赛是什么,而只是听说这个比赛的奖项“可以去大公司”,“可以让自己摆脱不好的学校”,诸如此类,参加后觉得很有意思,又付出了很多努力,就“喜欢”上了这个比赛。
这部分“喜欢”的人有很大一部分并不是真的“喜欢”——在比赛打的不好的时候完全控制不住自己负面情绪的人不说比比皆是也是能看到不少,而且原因大多是因为“自己的努力没有得到对应的回报”。
——「深夜闲聊」我对出题工作的看法

  Dai 老师描述的喜欢是一种非常纯粹的境界,曾经的选手是有这种境界的,现在的选手杂了些(我也是竞赛推广者,选手变杂了我也有责任)。但是我也认同 symbol 的一句话:仅凭功利心是走不下去的,走到后面必然是因为热爱。至少去到区域赛前排、进 WF 的选手,没有是为了考大学、找工作而来的吧。我们确实会因为努力没有回报而沮丧,但这个回报是我们在赛场上把实力发挥出来,而不是拿牌保研进厂。

  所以没发挥出全部实力,就会心痛。
  但仔细想想,这么多年,哪次比赛没有遗憾?NOIP、省选、NOI,暴力分都没拿满;大一大二的区域赛,签到都签不明白;大三大四,成绩好看了,但也总差一点就能获得更好的名次。遗憾才是常态。偶尔有几次最后 15min 把囤的题清完、心满意足下班的,印象都不如有遗憾的场次深刻。

  我们好像都退役了,又好像都还在赛场上。
  zayin 还在给各种比赛出题,邓老板是赞助商代表要去比赛现场宣讲,我是教练要带队参赛。我已经在赛场遇到过邓老板不止一次了,总觉得会有一天我们都出现在同一个赛场,以三种不同的神秘身份(x
  去年第一次坐看台,好熟悉又好陌生的场景。底下还是生机勃勃的一片,选手们在朝着各自的理想前进,看得我手痒。年轻人就是好啊,满怀希望,有想做的事情就可以做。
  多看看也是好的,让自己永远年轻,也可以凭我做教练的努力把希望之火传递下去。

  其实哪里都有算法竞赛的影子。在 complexity 论文里看到多项式全家桶,在一阶逻辑课题里看到矩阵树定理,在流算法里发现可以用并查集优化流次数……每每这样,都会感到一丝恍惚。