杂题 day3

主题:整体二分,哈希,反悔贪心。

link

A

直接用线段树维护整体二分可以做到 \(O(n\log^2n)\)

然而区间加可以先差分再前缀和回去,是 \(O(\)值域\()\) 的。

因此有一个奇妙做法就是边整体二分边离散化,可以做到 \(O(n\log n)\)

B

直接整体二分,把所有美味度大于 \(mid\) 的插入,先递归左边,然后删除右半段再递归右边。

实现可以先把所有美味度离散化,然后直接上树状数组即可。

C

可以整体二分,把操作和询问一起递归,\(O(n\log^2n)\)

还可以树套树,\(O(n\log^2n)\)

还可以分块,在值域上维护下标上块的出现次数的前缀和,和值域上块的下标上的块的出现次数的前缀和,即可支持快速查询,\(O(n\sqrt{n})\)

D

整体二分板题。

E

将题意转化为每块木板被第几个子弹击碎,然后又变成了版题、

F

整体二分,同样把询问和修改一起递归。

每次将 \(\ge mid\) 的修改 apply,然后按这个修改的值域决定往那边放。

修改的时候有一个 trick,不用写树剖,可以直接按欧拉序单点加查询子树和。

G

不知道,直接考了

H

枚举走到哪,然后贪心选尽可能多个,上数据结构维护即可。

I

反贪班子、

J

先按 \(b\) 从小到大排序,我们发现,假如一个 2关的关卡前面有没选的,那肯定不优,因此枚举 \(i\),i之前的都至少选一个,i之后的最多选一个,再上数据结构维护即可。

K

直接哈希。

L

每个数给一个随机权值,直接异或哈希。

M

和 L 一样,只不过多一个维护那些东西是需要更新的,君谈一下就好了

N

烂了。

posted @ 2025-03-23 22:06  CuteNess  阅读(10)  评论(0)    收藏  举报