2019 ICPC 总结 + 退役记


南京站总结:

​ 星期五晚上的飞机,因为某个队友没看聊天记录,洗了个澡拖了 $30$ 分钟,刚好赶上了晚高峰,好几次都挤不上地铁,往回坐了几个站,到人少的站上车,到了机场,还好安检和托运没有人排队,最后有惊无险的压点登机。

​ 星期六期六报到+热身赛。

​ 赛前在比赛群中大家都说是比套服是短袖,所以对比套报没什么期里,但是在路上发现有许多同款的黑红棒球衣,报到完确定是比赛服,有这么好看的衣服已经没有遗憾了 _(:з)∠)_,南京航空航天大学的食堂也是非常的赞。

​ 热身赛开始题目还没发下来就有人过题了,看了下题目名字盲猜是输出题目名,果不其然,简单测了下头文件还有一些特性就开始做题,羊总状态不是很好,读错题目并且码歪卡在一道题上很久,计数题想到一个二维容斥,至多事实上比较好求但是下意识觉得不好求就没推下去了。

​ 周六晚上看 LOL S9 八强赛 IG VS GRF,有点好看,但是第二天要比套就比较早睡下了。

​ 周日正赛早上是 $10$ 点开始,是因为下午有校内马拉松需要封路。

​ 开局迅速读题,A 题题意简单, Robin 说了个看似很真的素数做法我想了下求前 n 项数个数不是要 min25 吗,这么多个 case 显然不可做,但是榜上过的人却非常多,终于 36 mins 的时候羊总想出正确结论成功签到,1A 。期问读了 C 和 K ,C 是简单 dp ,Robin 上机码,K 是简单几何,在思考一些细节想想怎样更好写,C 1A ,我上机码 K ,期间他们想到 J 题做法,是 KM 模板题,我码完 K 发现出不了样例,打印换人,Robin 上机写抄了个板子1A ,期间打印了好几次 K 题代码都没来,有急了。我上机改了下 K 题代码出了样例,交上去 wa 了第一发,发现自己写了 p.resize(n), p.emplace back() 这种迷惑东西,改了一下,wa 了第二发,打印检查,他们想到 H 题做法上机,打印的 K 题代码终于来了,听说是打印机卡纸了。H 题 wa 了,我在肉眼 debug 过程发现K题代码叉积写成了 + 改了再交还是 wa ,这个时候在铜牌尾,有点慌了,我仔细检查了一遍,发现是有个二分的逻辑错了,再改了下交上去终于 ac 了,K 4Y 。我问了下 H 题的做法感觉很真,于是瞄了数据范围,发现这个 a 可以为 1 觉有点迷惑,就提了出来,发现 hack 点,H 2Y,于是一下子冲到银牌区,此时距离比赛结束还有 1 个多小时,整理理了一下,总觉 B F 比较好做,此时想到 F 的一个做法(我后发现是假的),颁奖有点神秘,没有滚榜直接公布获奖名单。

​ 拿到了人生第一块 ICPC 的牌子,

​ 把餐票麦在一起吃了两条烤鱼 + 两个香锅,快活似神仙。

​ 周日晚上看了 LOL S9 八强 FPX vs FNC ,打完比赛比较所以比前一天更早睡了星明逛了鸡鸣寺,在南京大牌档受美食,休验极好,(在鸡寺 1 块钱求了 3 个姻缘 XD。

​ 这场比赛中我不是很在状态,做出比较多的迷惑行为,不过好在结果还是在意料之中的,也做到了一些在比赛前强调的东西,比如读题优先,码题 + debug 时间不超过 30 分钟,带有猜想性质的颗目要放在后面做,6 题金牌,如果节奏好一点 F 还是比较有机会的,转一下模型就是个二维数点。


上海站总结:

​ 这次旅程方式我们选择了先住在飞机场旁边的酒店,星期六上午坐飞机,这样子的好处是不用冒着晚高峰赶不上飞机的风险,而且酒店和机票的加起来的价格也比原来的机票更便宜,周末的出行机票要便宜不少。坏处是到达比赛学校后报到比较晚,可能一些衣服什么的就拿不到本应该拿到的码数,而且感觉会累一些。

​ 关于住的问题,酒店对比民宿,开符合要求的发票要简单一些,但舒适度完全比不上。

​ 热身赛封榜后过了两题,B 题发现可以用 bitset $O(\frac{n^2}{64})$ 暴力水过去,感觉机器还蛮快的?不过电脑用起来一卡一卡的,键盘和鼠标也有点黏,不是很舒服。

​ 来到正赛,比赛开始榜上高中生还有一些率先过了 K 题,而就在刚刚 Robin 读了 K 并说可能不是签到题?听完题意后羊总秒出解法,写了一份 $O(n^2 2^n)$ 的代码交上去 T 了,优化了一个 n 后过掉了,28 min 2Y,评测机不应该跑的很快的吗?接下来羊总读了 B,Robin 上机码完过了,1Y。然后进入读题时间,D 是个构造题,E 明白要求什么但还是感觉有点抽象,F 看起来是个码量很大的树剖,H 是个二分答案,但是还没想好怎么 check,卡了一小段时间后我想出了 H 二分 + 贪心的做法,1Y,期间羊总个 Robin 都在尝试构造,又卡题了一小段时间,我劝说队友先放下构造,果然,换题之后羊总想出 E 题做法,模型转化一下就是最大生成树,Robin 上机码完,T 了一发,我觉得代码某些地方常数有点大,优化了一下以后又 T 了,冷静想了一下发现边的权值不会超过 10000,于是换成计数排序过掉了,3Y。此时在银牌区。接下来就是漫长的卡题期,一直尝试构造未果,于是先让 Robin 上机帮忙抄了树剖的板子准备开 F,在比赛剩 1h20min 的时候我想出了如何用两个标记维护(这个套路其实在 uestc training for datastructure 做过),开始上机码,由于是维护立方和,所以 pushdown 部分写了很长,也写了很久,在还剩 20 min 的时候写完了,但是发现了一堆 bug,板子抄歪,输入格式不对,初始化没对,有点烦躁,最后没有调出来。比赛结束 72nd 拿了银牌。

​ 赛后发现 D 的构造方法其实我有想到,但是在草稿纸上画的时候看错了,误以为是错误的构造方法,与 AC 失之交臂。

​ 这次比赛节奏不是很好,但其实也在意料之中。

​ 南京站与上海站之间差了快一个月,时间太长状态比较难保持,以后选赛区的同学可以参考一下,既不要选择时间相邻的赛区,也不要选择时间相聚太久的赛区,不选时间相邻的赛区是有可能会把上一场的坏状态带到下一场(不过手感火热也是有可能的,双刃剑),应该留出点时间调整,但相对应的也不能太长。

​ 总结一下训练,组队训练方法没什么大问题,套题和补题相结合,国内外题目相结合,但是执行力很差,而且到后期训练态度也有问题。从多校开始训练的套题,如果把赛中没有码完的题目码完过掉不视为补题的话,那么另外两个队友基本是没有做到主动补题,只有我一个人在补题,后来为了解决这种情况,固定一周一到两天为补题日,防止摸鱼把队友叫到机房补题,然而在机房也是摸鱼的状态。但是在比赛训练队友的状态还不错,多校打的还可以,于是没有说什么了。但是在多校训练结束后,连训练也开始摸了,一个迟到一个早退,期间我心态也逐渐炸裂,有一次训练跟队友讲做题思路,那个时候接近比赛结束,所以那个队友显得心不在焉,那道题是一个时间分治,那个队友在多校的时候码过一次,所以我倾向于让他写,但是百般推脱一下子点爆了我心里那颗不爽的炮弹,“那行,你不想写就不写。”吼了出来。从那以后训练摸鱼有点好转,但训练态度还是不能接受,好几次都想一拳上去。

​ 最后拿下两个银牌也是意料之中,毕竟这种态度拿金运气也太好了。稍微看了一下队友暑假训练开始后的 cf 场次屈指可数。放宽心态后我自己的状态好了一点。打完上海站队友后悔没有好好训练了,我也只是一笑而过。

​ 如何在队友摸鱼的情况下打出好状态也是一种实力,如果队友摸鱼能打出好状态那就让他摸去(x。

​ 今年一队无金让我感觉这个比赛更像是一个运气游戏。你需要有足够好的运气组到好队友,有足够好的运气在比赛中找到状态,有足够好的运气碰上一套合胃口的好题。一队的态度努力实力都是肉眼可见的,但就是运气差太多,七成实力三成运气。


送给继续打下去的队员一些话:

​ 我一直坚信努力可能不会有好结果,不努力一定不会有好结果。所以一直努力坚持,努力改变。从进队倒数到进入二队,通过刷题克服一切自己不擅长的题目。

​ 努力坚持,排名偏后的队员大可不必气馁,吉老师说过当你坚持的时候,前面的人就会自己自爆了的,我觉得很有道理,同级一些有实力的确实因为疏忽训练被我踩下去了。

​ 努力改变,我是比较不擅长思考,遇到问题总是需要问别人,思维也非常差,于是我寻求改变,刻意的不去问别人看题解,一道不会的题先想它个两三天,锻炼思考能力,后来证明这样子做确实给我带来了许多收益。改变是一件非常困难的事情,但却是一件非常有性价比的事情。

再讲一点干货,建议有组队意向的提前训练,把人看准了,我们队省赛后就是提前训练,安排知识点各自学习,然后再相互交流学习,这样子既可以快速补充知识点,也知道队友擅长什么不擅长什么,打起来更默契。

个人做题建议做 cf,套路思维都非常可以,做 div 1 div 2 都要记得补题,补题才是能带来本质提升的。每月都有的 codechef long chellage 也可以打,补充套路,还可以锻炼长时间思考的能力。如果时间不是很紧张,就算是一眼看出做法也建议把代码写出来,多写代码,形成肌肉记忆,像线段树之类的要比较熟悉。


比赛感悟:

​ 参加这个比赛虽然需要牺牲许多时间与爱好,但纵观全局还是利大于弊。

​ 参加这个比赛,我会为自己努力后得到一点点提升而高兴,会为努力后运气不好打铁或者被人碾压而失望痛苦。

​ 在别人旅游拍照享受美食秀恩爱时,我却在 OJ 上刷出了整整一版的 Wrong Answer 或者 Time Limit Exceeded。

image-20191201235900774

​ 天道酬勤,虽然不再是一位 $\text{ACMer}$,但一定不会忘了算法竞赛带给我的酸甜苦辣。


​ 感谢父母,感谢队友 $\text{Robin_Lo},\text{Water_sheep}$,感谢瓶颈期耐心为我解答的 $\text{tzk},\text{bibibi},\text{fat}$,感谢算法竞赛道路上帮助过我的人,坑过我的人。