2025.3 NOI山东省省队选拔游记
Day -16
收到了去参加省选的消息,三思后决定参加,说好听点就是积累一下考试经验,难听点就是去陪跑垫底。
学业压力和实力差距,不考虑停课备考。
Day 0
12:00 准时带着假条当着全班的面跑了。
1 点坐着车走了,一共就十来个人坐一辆三十多座的车,特别宽裕。一路上一边睡一边看手机迷迷糊糊就到了济南,用时 3.5h。
直接去的酒店,酒店是复古风格,舍友还是@yueyan_WZF,我什么都能接受,就是不能接受网络像史的一样!
电脑充电器没拿,崩。
6:00 去吃饭,去一个把子肉的快餐,来的路上有滑梯,@wabc30和@TequilaSunset跟小孩一样滑下去了。
出酒店时碰到了@lyas145。
酒店离考场并不远,步行 10min 左右到。
试机,我的前面是@wanghx1,和@Field_Mouse、@KingPowers也在一个考场。
鼠标比上次好用多了,键盘上的 ↑ 变成了 →,关键是那个键还有点坏,得使劲按才能行。
完成了 CSP-S 时没有写完的树剖,虽然写的慢,但是一遍写过了,是一个好兆头。
跟@wanghx1一块走,8:00 左右回到房。
中途被牢唐叫去开会硬控 30min,然后就是一直在启动。
崩铁第一次打满末日寄。
玩了一会 11:00 睡觉。
Day 1
6:10 被@yueyan_WZF叫醒。
喜报:眼镜被我一屁股坐在床上,两个镜脚都断了。拿胶布粘上勉强能用。
去吃饭,酒店的饭有食欲但吃上去依托。
步行,8:10 分到的考场。8:30 准时开考。
开 T1,读完了,没思路,看 T2,没思路,回到 T1。
考虑特殊性质 A,发现 \(n \le 2 \times 10^5\),可以从 \(1\) 到 \(n\) 枚举判断,大体就是枚举的时候根据当前的数把选数区间分层三类,左边的、右边的、覆盖的,这样就能知道比自己小的数的数量和比自己大的数的数量的取值范围,以及自己能取多少个,贪心判断即可,时间复杂度 \(O(n^2)\)。
想的过程中太浪费时间了,1h 拿到了 40pts。
重新考虑怎么快速找到取值范围,一开始脑子发热写了一个线段树分治,发现全假了。后来仔细想想在向下一个数枚举的时候,比自己小的数的数量的取值范围是递增的,比自己大的数的数量的取值范围是递减的,开了一个桶存区间,得到了一个大常数 \(O(n)\),60pts 到手,此时已经过了 2h45min。
发现这个东西就是在特殊性质 A 的基础上扩大了值域,想到离散,但是考试是犯唐写了很多错,最后不知道哪里写错了一直过不去样例。后来发现离散后中间的某些数可能取不到,得维护能不能取到中间数的结构,这个东西显然是要区间加的,用树状数组做个差分就行了。时间复杂度大常数 \(O(n \log n)\)。
惊奇地发现大样例跑了 1s+,就开始卡常,vector 换成了手写链表,改东改西,把大样例卡到了 0.55s,这时候已经过去了 4h10min 了。
但是改完后我并没有仔细比对每一个样例,只对了后两个,当时太着急了,因为前面确实写错了很多东西,运气好一点应该是能 100pts。
20min 写 T2,打暴力,最后不知道哪里写错了,样例二一堆样例没过去,遗憾下播,我甚至没有仔细检查每个题的文件有没有写对。整场考试甚至没有看一眼 T3。
整个考场热的要死,我只穿的一件薄长袖都出汗,别人是怎么做到又穿棉衣又穿羽绒服的。
估分 [0,100]+0+0。
我觉得 T1 都应该人均 A 的啊,怎么大佬们都折了。
吃饭,还是昨天晚上吃的那个把子肉。
回宿舍摆了一下午,中途带上舍友和@TequilaSunset去出门,说去买瑞幸,结果被 29 一杯的价格吓晕,临沂才 14,这就是大城市吗。
得到了@wabc30的身份证照片,精准开盒,崩。
5:40 去吃饭,吃了一个肉夹馍,大块大块的肥肉腻死个人,10 块钱吃了依托。
一边吃 KFC 一边打 ABC,过了前五个题,F 二分写T了,感觉是暗示我的 Day1T1。加了 82 分。
洗了个澡,11:00 睡觉。
Day 2
6:30 自然醒。
酒店的饭还是一如既往地难吃。
早上下的雨,刮着大风,一路上伞都险些被吹跑,到了考场发现整个外套和裤子全湿了。
开 T1 瞪眼看上去似乎不难,T2 有理数取模,不会,跳 T3,不会,回到 T1。
画了半天图,发现只要是朝着自己需要的方向走就行,全部走完就的时间是路程之差的总和,特殊性质 A 16pts 拿到,用时 15min。
发现特殊性质 B 两个物体之间互不影响,贪心按时间递增来排序逐一判断即可。一共 36 pts 共用时 30min,结果 A 直到考试结束也没有拿到更高的分。
看特殊性质 C,是在 B 的基础上加了几个物块出现影响,我其实有思路,就是把移动时的障碍块统一移动到目标位置的右边,这样就能尽可能减小用时,但是难就难在实现,要是直接暴力更新位置就是 \(O(n)\),一开始打了一个线段树+二分的 \(O(\log^2 n)\) 更新方式,又意识到移动后右边可能又有额外的障碍块,感觉是假了。写了 1h30min 无果后就跳到了 T3。赛后发现这种写法居然是正解!!!
用 15min 打了一个暴力拿到了 8pts 又回到了 T1。
继续焦头烂额地想,很遗憾,我没有办法想出来怎么处理,中途我尝试写过那个 \(O(n)\) 更新的方法,结果样例因为只有 Yes 和 No 且超级水能勉强全过,我自己造的全瞎了,每个块的用时不对、块的位置爆炸、块的重叠各种五花八门的错误根本调不动。
我左边的一个女生也是初三锻炼,中途上了个厕所回来就开始小声哭,一直哭了近 15min,都这么强。
本来一直调不出来就心态不好,旁边一个人哭心态更受不了了还剩最后 30min 的时候几乎就摆了。看了一眼窗外,发现下起了大雪。
估分 36+0+8=44。
出来后发现比早上的大风还冷。
雪真的超大,今年临沂没下过大雪,都是盐粒子,济南的雪都很脚一样厚了。
找了个羊汤的店吃午饭,在门外打了半天雪仗。
高速也是封了,走的省道慢的要死,中途还睡了一个小时。9:00 才下车。
这些分对我来说真的够了吗,算是我第四次大考中发挥最好的一次???
已经具有思考较难题目从没思路一步一步想到正解,问题在于时间消耗过久,调代码能力差,以后的训练目标也有了。
Day 6
出成绩了,100+0+0+36+0+8=144,一分没挂,当时开心地都跳了起来。
全省排名:138/245。对于我这个初三沙沟已经很高了。
the end

浙公网安备 33010602011771号