【游记】NOIP 2022 游记

· · 生活·游记

Day 0

由于众所周知的原因 LN NOIP 没了,放假了。

Day 1

家里蹲。

下午拿到题打算 vp 一下,本来打算两点开始结果两点还没拿到题。

上来先看了前两个题,T1 看完觉得比去年 T1 难十个档次(数数都恶心),T2 看完题面有种预感 CCF 不会下发 SPJ。

打开下发文件一看果然没有,乐。

开始想 T1,发现三方是一眼的,又想了一会想到枚举左上角然后维护右下前缀和,然后从下向上倒着维护就做完了,然后第二问和第一问没啥区别,写写写,1h 左右写完,过了大样例懒得拍了,时间很充裕直接大力清空,好像没什么可挂的地方,下一题下一题。

开始想 T2,这是羊了个羊的原型还是啥,那玩意我从来没看过啊,很谔谔。看着是个逆天构造,然后感觉判合法还是好判的。

想了一会突然看到了 k 的取值,瞬间清醒了,想到那个制作菜品好像就是奇葩数据范围分类讨论,开始爆想。

又开始想移球游戏的构造,想到肯定需要一个空栈来转移,k=2n-2 的时候两种颜色放一个栈就做完了。k=2n-1 就多了一种颜色,直接找这个颜色和下一个之间的部分讨论就完事了。

写写写,一车细节,写完了,过不了样例。

调了一下发现好像少考虑一堆细节,想了一下发现还要补一个栈顶元素出现奇偶性的讨论,加完之后发现小数据能过了,大样例也不知道有没有过,但感觉不像是过了。

现在快到 3h 了,手上只有一百分,先去看 T3,很套路啊!缩点边双加树上 dp,但是这些东西我都一万年没有写过了!好像有点暴力分可以写但是我也不知道能写多少!写不完 T2 就寄了!

再去看 T4,高级数据结构很经典啊!一眼有一个经典的莫队,但是码出来感觉要花很多时间!先写了个 8 分的朴素做法留着。

回去调 T2,把讨论补全了,发现还要讨论空栈,然后发现自己做法有本质上的问题,还好迅速理顺思路局部重构,补了个 set 维护空档,然后简单 assert 一下貌似过了大样例?造了几个 hack 数据没能卡掉,那没事了。

还剩十分钟左右,摆烂了。

大概也就 100+100+0+8=208,不知不觉成为了杠题选手,挺好笑的。

Day n

重新用大号完整测了一遍数据,好像没挂,那还挺好的。

场上写不出 T3 这种套路还是很丢人的吧?赛后发现普遍认为 T2 远大于 T3,可能 T2 这种思维难度和代码难度都相对偏高的题目,放在这里的确有点。当然事后看我冲出了 T2,结果上影响没有特别离谱,毕竟我就算写完了 T3 肯定也没时间写别的题,最多补一个 T2 的 15pts 加上 T4 的不知道多少分的莫队,大概会比现在高个 40pts 左右。不过好像 T3 大样例没强度挂掉了一车人,我不好说。

运气比较好最后时刻冲完了 T2,不然可能就只有 100+[15,35]+0+8,那样就搞笑了。事后想当时选择重构还蛮正确的,我赛后对着重构前的代码爆改了巨长时间也是一车 WA。

就算灵光一现场上做出 T2 这种怪题,依然搞不定 T3 T4 两个套路,这应该是我现在严重的瓶颈了。如果再切掉一个 T3 好像就成为高水平选手了哈哈。

不知道这个分在省内有没有竞争力,感觉没有,不过这场总比 CSP 打得好点,无所谓了。