NOIP2023游记

· · 生活·游记

赛前封闭那会每天模拟赛基本全是机房垫底,于是心态早就放平了,进考场的时候目标纯粹就是把每个题暴力都写完,觉得四个题加起来能上100就很好了。

抱着一个躺平的心态进了考场,点开PDF,第一眼:啊?T1就整字符串,完,今年成绩又堪忧了。于是翻到了T2:诶?这东西看起来像是可以建图,然后跑搜索,看起来可做,似乎还有救。再往下翻:啊? 10^{100}?不是出题人你疯啦,这什么东西。得,这T3估计暴力都打不出来了。再去看T4,跑步打卡?还怪贴合生活得嘞,不过这题目是什么鬼东西,会不了一点。看完了决定暂时放弃T3和T4,这注定不是现在的我做的出来的东西。

扫完了题,对自己能想到T2的思路方向十分震惊,于是又去看了一眼,发现根本用不着建图什么的,似乎用并查集就可以搞定,维护一下相等关系,最后判一下似乎可以解决,此时我的内心是:啊?不是?什么玩意?这思路怎么听着这么正确?连复杂度都好像能过,假的吧,这题我能场切?我自己都不太信,于是决定先去看T1,过会再回来思考这个思路的正确性

去看了T1,看见是字符串就想逃,但是翻了一眼数据范围,竟然还给n=1的部分分,题里刚说完对于n=1是自然成立的,这出题人怎么这么友善还送分啊,于是光速打完n=1再试图寻找一些思路。
发现操作可以做任意多次,那太棒了,那直接当前的排成最小,剩下的排成最大,看看满不满足不就完了,再看一眼复杂度是n^2,居然能过,觉得自己今天已经超常发挥了,T1一个题拿了考前准备分给四个题的分数

切了T1自信心飞速上涨,开始对切掉T2有了信心,再重看了一遍我一开始想出来的思路,觉得似乎是对的。我是先开数组记录他的赋值过程,然后用并查集维护相等关系,最后判一下如果\neg{x_i}=x_i,那么必有x_i=U,自己看着非常对,复杂度似乎也没问题,于是直接开始写,写完发现有个样例过不了,于是开始了痛苦的调试过程,最后发现是并查集初始化开小了,然后在10:42的时候提交了T2,预计得分:200
考完了听朋友说T2用什么扩展域并查集,我都没听过,我只是把x_i\neg{x_i}当成两个不同的点去维护,最后判了一下是否相等,属于是知识点不会,但我可以用别的方法实现嘿嘿嘿

一开始就认为T3和T4估计写不出正解,想着主要把时间花在T1和T2,最后给T3和T4各留差不多半个小时写个暴力,结果没想到我才考到一半就把T1和T2切了,然后开始尝试T3和T4的暴力

试图通过观察样例找性质,但只找到了首项和末项大小关系一样的性质,于是只会前两个点,本来想尝试继续观察性质的,但写着写着放弃了,于是这题只打了10分

去看T4,感觉可以dp,但一翻数据,于是知道了我那个nk的dp肯定不是正解,但似乎能拿到一些分。觉得可以按第i天和前面j天连续打卡设状态,但不确定自己能推对式子,于是先把n\leq18的搜索打了,然后尝试dp,试了一下发现自己很顺利的推出了式子,然后就写了,测完样例发现似乎没什么大问题就交了,预计得分36

最后剩下十多分钟觉得估计也写不出来什么别的东西,就开始检查代码里有没有什么致命错误,幸好查了,好几个致命的错误,检查真的是个好习惯(

预计得分100+100+10+36=246,考完出场后认为自己考的特别好,因为我和我朋友都是这个分,于是认为前两题应该大家都可以切掉,后两题的暴力大家应该也都能写出来,结果下午跟另一个朋友一聊发现他竟然不会T2,然后才知道246可能不是大众分,于是对自己信心更高了

希望高中第一场noip能不出事,得不得奖问题不大,不挂分就好