退役选手 NOI2021 VP 记

退役选手 NOI2021 VP 记

很久之前就有高二升高三的暑假打一打 NOI2021 同步赛的想法,学习学车老哥的迷惑操作,为浙江同步赛上 Au 贡献一个人头,结果因为学校补课又强基上课各种原因,一直没写。所以假期找了一些时间写了一下,然后发现

这套比赛也太适合我了吧啊啊啊啊啊啊

\(100+75+100+100+35+20=430\)

「NOI2021」轻重边

和 kczno1 的某道 noip 题很像。

树剖,维护两棵线段树,一棵维护重边的颜色,另一棵维护一个点最迟什么时候变成轻边。询问的时候重边直接问,轻边比较一下颜色覆盖的时间先后,时间 \(O(Tn\log^2 n)\)

注意父亲节点也要改。

「NOI2021」路径交点

菜的不行,想到 \(75\) 不知道怎么处理不相交。

一搜发现是 \(LGV\) 引理,noip 前学过。自闭了。

「NOI2021」庆典

发现先缩个点,转成树,然后套 \(m=n-1\) 的做法。

简单判断一下祖先关系,问题转成 \(O(k)\) 个路径相交。

然后我就建了一个虚树在虚树上树上差分。I am sb

实际上树剖完排序贪心一下就行了。

「NOI2021」量子通信

想一下就会做了。突然感觉去年 noip 前爆刷 at 挺有用的。听说好多数据结构选手觉得 T2 比 T1 简单?

首先看到随机和强制在线,想要用乱搞艹过,发现无果。从而寻找正解。

再看到 \(k\) 很小,猜测和抽屉原理相关。再继承一下乱搞的做法,即从符合一部分条件的少数串中进行整个串判断,如果可以就更新答案。

而询问的次数很大,一次判断用 bitset 优化后也要 \(O(8)\),那么我们每次查找的集合要尽量小。

想到一个乱搞:对于每一个长度为 \(T\) 的串和 \(S\) 的子串相同,然后把包含 \(T\) 中的串都拿出来判断一遍。

这里取 \(|T|=16\),即对于每个长度为 \(16\) 的串,都做一遍。因为 \(k\) 最大才 \(15\),所以至少有一段是被判断到了。

再根据随机,这道题就做完了。时间复杂度 \(O(能过)\)

「NOI2021」密码箱

不会,写了暴力,找了一下性质 \(A\) 的规律。听说要线段树维护矩阵乘法,退役选手已经写不动了。咕咕咕。

「NOI2021」机器人游戏

拿了容斥的分。正解咕咕咕。

后记

所以今年怎么这么多数据结构和计数题啊 /kk

不过算是了却了我的最后一番心愿。

高三的 noip 就不一定去了,会全力冲首考。

希望年末我会凯旋归来。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章