Roshin 的算法竞赛回忆录(下)
暑期集训
暑期集训队选拔结束后,队伍进行了重组,捞了隔壁队的 JSOIer NOIP2018 441 分的翔哥加入了我们队伍。
牛客多校第一场,我和翔哥两人在机房,韩老师在赶路半挂机中,打到了 rk 158 的样子(当时打完以为这个排名很好打,后来只有一场牛客多校超过了这个排名)
和翔哥组队以后,感觉有了一些新鲜感,经过一些波折以后,感谢队友的付出,三个人相聚在了 B208 迎接来我们的暑期集训。
低迷
根据 SCUACM 历来的名额分配规则,位于多校前 6 拥有更高的名额分配权(尤其是线下比赛,如果在第六以后大概率是没有比赛名额),因此努力进入多校前 6 成了我们的目标。
杭电多校第一场,让我印象深刻的 A 题,是我单切的一道 border 树上问题,但由于 HDUOJ 栈空间有限,莫名的爆栈 RE,赛后得知后手写了递归栈一发 AC 了,好在第一场比赛并不计入积分(后8场)。
开始记分的几场记忆有点模糊了,只知道前几场发挥很一般,甚至连续两场因为 多组数据清空 或者 其他非常低级的错误比如手推公式推错,在一行代码的修改空间内就可以 AC 的题目最终没有 AC,丢失了很多积分。让人感到十分难受。后来得知有一队 22 级新生将提前加入集训队,问就是 3 个 NOIer 天降神兵,直接爆杀了集训队的老生qwq。正因如此乐观估计的 4-6 名又少了一个席位,成了 5-6 名的预计排名。
似乎是杭电 05,记分的第三场,我们队打出了极其难堪的战绩,积分只有个位,记得那一场的心态非常炸裂。临时结算的积分排名也掉出了前 6 。根据前 8 场取最高 7 场的规则,我们失去了最后一次机会,再崩盘一次就真的要出事情了。周二周四两场杭电多校,记得中间的几天心里一直惦记着这件事,但我坚信想要继续前进必须要抛开过去。
后来又得知一队新生即将加入集训队,这样集训队扩大到了 12 支队,按照纸面实力估计,我们队似乎只能去争夺那仅剩的第六名。我的竞赛生涯又蒙上了一层阴影。。。
根据规则第二队新生由于中途加入,前面几场的积分只能算 0 ,似乎又给了我们一些希望,但希望不大,中间的几场我们的发挥似乎变得极其稳定,波动就在 10 分左右。但如此下去,我们迟早会被第二队新生反超,成为第六,还很有可能被其他队伍反超。
转折发生在 杭电 08,队伍按照以往几场,在前期签到有一些小坎坷,即便没有额外罚时,在题目上的通过时间上也不是非常的优秀。按照前几场的经验前期把能做的做完了,后期我们队很难做出来题来续上,然而神奇的事情似乎发生了。
转机
韩老师中期上机写他的计算几何(由于我没有学习过计算几何负责其他知识点,所以没有帮他看过计算几何),翔哥和我在思考另一道奇怪的题目,大概是分析不来时间复杂度,而且来写,根据翔哥神奇的脑回路,他说可以保证正确性。
最后一小时,韩老师的计算几何似乎调不过样例,便让机子给了翔哥开始慢慢敲刚才讨论的题目。由于实在没有其他题,我蚌埠住了,就找韩老师询问计算几何题意。
题意大概是一个凸包每秒会扩张,需要计算变化的面积,他给我讲了一些性质,我听了以后感觉很可做,他说他现在推不明白式子,我帮他看了下,然后感谢这个计算几何主要是考查推导而不是卡精度,我很快的模拟出来了扩张过程,简单推导了一下发现是一个等差数列求和。
和韩老师协商之后,肯定了解法的正确性,就把翔哥赶下去,10分钟不到改完了代码,顺利通过样例,然后提交。HDUOJ 返回了一个大红色的 答案正确 。我们激动地欢呼了出来。这时候我们通过了 5 题,位列前200名,打出了我们最好的成绩。
比赛远没有结束,翔哥在我们通过后上机继续调试题目,由于我和韩老师都不太懂他的思路,讲解起来也比较复杂,只知道十几分钟后翔哥告诉我们过样例了,“交!”。HDUOJ 又返回了一个大红色的答案正确。至此 AC 6 题,甚至没有 dirt 一发。我们打出了我们所有比赛的最好的战绩,进入了多校前 10 %,按照规则,我们在一场比赛就拿到了比以往两场多校积分加和更多的积分。赛后我们出去好好地吃了一顿饭。(忘了吃啥了qwq)
最后一周两场杭电多校,受杭电08 的鼓舞,我们的发挥高于以往的平均水平,也以微弱的优势捍卫住了多校第五的排名(但实知,硬实力在第六的样子,区域赛的战绩也证明了)
多校结束,队友两人由于家在外省,没有回家。我回家了之后,便开始苦练 codeforces 。
总的来说多校的体验更像是电竞职业选手的训练,隔几天的集中比赛和赛后复盘,无比赛日的查漏补缺和训练,很容易让选手的水平蹭蹭上涨,也让我们队看到了银牌的希望。
限电,疫情风波
8 月底,由于干旱,成都市全市进行了限电,SCU 也因此推迟了开学到 9 月初,而不好的事情接二连三发生,月底时,成都疫情逐渐爆发,在环球中心检测阳性(似乎被辟谣)后,我意识到情况不妙,立即询问辅导员能否返校,但需要我做 48 小时核酸,彼时我没有核酸需要先做,晚上下着暴雨,回到家准备去做核酸的我看见倾盆大雨便取消了念头,想着第二天早上早点去做也可以。事实是,第二天早上做的核酸晚上才出结果,下午的时候,新都区成了低风险,意味着我回不去学校了。
显然,短期之类我难以回到学校,后来疫情越来越严重,成都市全市静默了快半个月,才实现社会面清零。
正因为疫情,我缺席了 CCPC 网络赛。CCPC 网络赛按照原先规定是网络赛前 6 获得 CCPC 名额,如果我队人齐的话,是有很大概率拿到其中的名额。但后来由于前面的队伍很多不齐,遂临时修改资格,根据多校排名分配,我们选择了 CCPC 绵阳站,算是有惊无险。
ICPC 第一场网络赛,由于刚刚恢复,还不能进入学校,甚至出现了奇怪的 5 + 2 规则,不能跨区活动,好在新都和双流是可以互通的,我们找到了校外的一家自习室,开始了我们时隔一个月第一次线下相聚比赛。但比赛结果不如人意,我们很快的出了 A 题的思路交给我来写,由于代码比较复杂通常也是我来写,但是我写出锅了,从2小时开头卡到了最后,莫名改了个错误最后10分钟通过了,显然成绩十分不理想网络赛排名 400 + ,仅仅是铜牌尾巴的排名。
第一场的失利并没有影响我们的信心。看见后排的队伍在网络赛中都能打出 200 + 的排名,我们相信我们也可以。
早八208 不相信长夜将至,因为火把握在我们自己手里。
第二场 ICPC 网络赛,成了集训队 36 个人唯一一次聚齐的比赛,在网络赛 2 ,早八 208 的发挥可为神勇,也成了我们一个赛季的缩影,前期 1 个小时内很快通过了 签到 8 题中最难的 L,我们通过是,榜上只有个位数队伍通过(翔哥大腿)。大概是一个前缀和加容斥,赛后也只通过了 201 队,前期的相当长一段时间我们排名在集训队的前几甚至第一。
也正是因为是我们赛季的缩影,前期猛如虎,中期萎靡,后期成虫,K 题我和翔哥沟通失误,一个边界问题上并没有想到一起(改下数组大小便能通过),另外一个题似乎是常数过大。最终 6 题遗憾结束,rk 289
网络赛2让我看到了队伍的上限是可期的,银牌是有希望的,后来我们便开始了每周一场的区域赛真题合练。
队伍的 vp 战绩大概是,正常发挥银中尾,过多失误,无论决策还是代码上的失误就会掉到铜区,不过没有 vp 打铁过。
早八208 队伍风格:前期三个签到哥,几乎总是稳在银牌区,中期没有续上的话,最后就会打铜,续上就是手速银,很难有超出银牌线 1 题的发挥。
后来由于种种原因,我们选择了沈阳赛站作为我们第一场 ICPC 区域赛,也是这个赛季的第一场 ICPC 区域赛。
区域赛
在沈阳站开始前,值得一提的是,我的 cf rating,自 4.23 上蓝以后一直处于 1600-1700 的区间,甚至会掉回青名,在半个月的时间,猛涨了 200 分,到了 1839 。那时候我觉得我的状态似乎很不错,我好像真的可以冲击银牌了!
虽然但是,沈阳前我的训练状态逐渐下滑,可能是由于临近比赛,心态发生了一些改变,心里所想的大概都是,听天由命吧,不要给自己太大的压力。以至于沈阳前一天的 Atcoder Beginner Contest 打出了极其臭烂的战绩,被 C题 卡了,赛后看题解发现只需要一个函数 prev_permutation()
,心态炸裂。
沈阳站回忆
2022 年 11 月 6 日中午 12:00 ,第 47 届国际大学生程序设计竞赛亚洲区域选拔赛沈阳赛站正式开始。
具体详情可以参看我的
是的,比赛结束,我如愿拿到了这一年里的最大目标——区域赛银牌。即便是 rk95 它也是银牌。沈阳结束后我的感受就是我不再是个废物了。
- 在大二下学期的算法竞赛历程里除了一个耗不起眼的 CSP 认证 300分,对我这个均分进不去班级 50% 的人来说(学院保研硬成绩线),再多的保研加分,也是聊胜于无。
- cf rating 在 1600 分卡了半年,水平不如绝大多数算法交流群的群友,虽然他们比我开始得早,但同期来比,依然是一坨答辩,何况这也并不是理由,我也大三了,极有可能是我的最后一年,亦是第一年。
沈阳赛站,早八 208 把队伍决策和合作发挥到了极致,前期迅速跟完签到题,一人构造,两人大模拟,虽然我贡献了全队的唯有两发罚时(再多一发罚时大概率铜首),但在队伍里也只有我去充当大模拟的选手(手速快)。
Ag, we worth it!
CCPC-绵阳站及 ICPC-济南站回忆
在拿到 rk 95 的银尾后,我们十分肯定我们的水平,是难以拿到集训队前三的 ec final 资格。(现在结束了,ec final 第三名在区域赛的战绩是 rk 37)遂停止了 vp,全队开启半退役状态。
在 CCPC-绵阳站 赛场上,我和韩老师对着 200+ AC队伍的 H 题看了一个多小时,实在蚌埠住给翔哥讲题意, 5 分钟就给我们秒了,后来 DP 题目没有开出来,运气非常好地苟了个 铜尾。
打完绵阳后,网瘾发作,每天跑B208去做题,有时还和李哥在机房开黑打cf(不是作弊的开黑),也是相当快乐,也保持了我自己一定的水准(因为我发现我停训一周后,脑子变得像是一坨答辩)。
ICPC-济南站又是 rk95 依靠手速拿到了又一块银牌,发挥真是稳定,以 2 银 1 铜结束了我的第一个赛季。(不知道有没有第二个赛季)
济南站的具体可以看我在知乎的回答如何评价 ICPC 2022 济南站 。
至此 早八208 终究是散了,韩老师退役,我也难以把重心放在算法竞赛上,翔哥也差不多。
第一赛季撒花完结!
总结
首先感谢牛神带我入坑算法竞赛。感谢队友 韩老师,翔哥的带飞,让 早八208 能够成为 SCU 赛季第一支 ICPC 双银牌的队伍。
感谢未来 GM 和一起 vp cf 的李哥以及众多群友(铮哥,wf 哥等等)在 cf 上对我的激励和指导。以及集训队队长 yyh 解决了集训队内的一些琐事为队员们的辛劳付出。
感谢 Bamboo fan club 的另一位成员 Feng_D ,一起在算法竞赛中从小白成长为牌子爷。还有前队友雷老师,即便没有一起拿牌,但也很怀念当初一起训练,赛后复盘的时光。
最后感谢我的女朋友倩姐!从决定参加竞赛到现在一路对我的支持,理解与陪伴。
写于 2022 年 12 月 18 日,感冒中,感觉明天就阳了(或许现在已经阳了)