Description
题目链接:BZOJ 2120
墨墨购买了一套 $n$ 支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问。墨墨会向你发布如下指令:
Q l r
:询问从第 $l$ 支画笔到第 $r$ 支画笔中共有几种不同颜色的画笔。R p c
:把第 $p$ 支画笔替换为颜色 $c$。
数据范围:$1\le n,m\le 5\times 10^4$,$1\le c\le 10^6$
Solution
由于没有区间可加性,我们考虑带修改莫队。根据「算法笔记」带修改莫队算法 中的分析,我们直接 $O(n^{\frac{2}{3}})$ 分块,然后把询问离线下来,按照套路直接做就行了(Orz 某位叫做 $\color{black}{\text{Q}}\color{red}{\text{Y}}$ 的神仙说可以树套树)。
据说这题分块 + $\text{bitset}$ 可以卡过去?但是我卡了一个晚上常数还是只有 $80$ 分啊 QAQ
时间复杂度:$O(n^\frac{5}{3})$
Code
分块
1 |
|
莫队
1 |
|