NOIP 2024 游记
前情提要:NOIP 前一天连喝了三杯咖啡,手一直在抖。
考点和 CSP 2022 以及 CSP 2024 一样在七中高新。
发现键盘无论怎样拉都拉不到桌子上,于是只能强行把绑键盘线的东西拆开了,然后就可以在桌子上敲键盘了。发现在相邻机位中间设了挡板,原因未知。
不知道为什么,和 CSP 一样起初一直打不开代码回收系统,过后不知道怎么回事就打开了。
先看了看大样例,发现 query 好像是道 ds(当时以为是树剖),edit 输入 4 行 01 串,有点诡异。
开场正序开题,想了一会儿 T1 发现好像可以直接贪,略微证明了一下感觉是对的。但是时间复杂度是双 log,过了一会儿发现可以用 bit 做到单 log。于是开写,写到一半发现好像可以 \(O(1)\) 维护 sum 值,于是改成了 \(O(n)\)。细节有点多挂了很多次大样例,浪费了很多时间。9:20 通过所有大样例。
开 T2,第一眼感觉有点难,于是去上了个厕所。回来认真思考后发现每一段的贡献独立,而每一段可以直接容斥计算。复杂度 \(O(m \log V)\)。代码很短,一遍过了大样例,时间 9:55。
认真读完了 T3 的题面,感觉不可做。转而去看 T4,最开始理解错题意了,感觉很唐,但是暴力代码一直过不去。之后发现了,开始认真思考。注意到了 \(\{a_l\dots a_r\}\) 的 LCA 深度相当于 \(l\) 到 \(r\) 相邻两点的 LCA 的深度最小值,于是问题转化到了序列上。有一个很显然的做法是二分 + 主席树,感觉 5e5,2s 的数据范围能过,于是直接开写,时间 10:40。
写了一大堆,调过大样例已经 11:50 了,发现最后一个大样例要跑 6s。于是开始卡常,最终 5e5 极限数据跑了 3.2s,但是 1e5 的点应该没问题,感觉卡不动了,时间 12:20。
回去看 T3,感觉第一档部分分都不是很好写(当时没看到链的部分分),所以就没打 T3 暴力,肉眼检查了 T1T2T4,没发现什么问题。然后就交了。
最终没有挂分:\(100+100+0+64=264\)。
//dzzfjldyqqwsxdhrdhcyxll
本文作者:Creeper_l
本文链接:https://www.cnblogs.com/Creeperl/p/18591999
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】博客园2025新款「AI繁忙」系列T恤上架,前往周边小店选购
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步