#P1903. 数颜色 / 维护队列(Counting Colors)
0
数颜色 / 维护队列(Counting Colors)
数颜色 / 维护队列(Counting Colors)
题目描述
墨墨购买了一套 支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问。墨墨会向你发布如下指令:
-
代表询问你从第 支画笔到第 支画笔中共有几种不同颜色的画笔。
-
把第 支画笔替换为颜色 。
为了满足墨墨的要求,你知道你需要干什么了吗?
输入格式
第 行两个整数 ,,分别代表初始画笔的数量以及墨墨会做的事情的个数。
第 行 个整数,分别代表初始画笔排中第 支画笔的颜色。
第 行到第 行,每行分别代表墨墨会做的一件事情,格式见题干部分。
输出格式
对于每一个 Query 的询问,你需要在对应的行中给出一个数字,代表第 支画笔到第 支画笔中共有几种不同颜色的画笔。
样例输入 #1
6 5
1 2 3 4 5 5
Q 1 4
Q 2 6
R 1 2
Q 1 4
Q 2 6
样例输出 #1
4
4
3
4
数据范围
对于 的数据,;
对于 的数据,;
对于所有数据,。
所有的输入数据中出现的所有整数均大于等于 且不超过 。
本题可能轻微卡常数。
来源:bzoj2120
知识点与难度
本题涉及的知识点从属于 CSP-S,难度(CF Rating):2000。
测试点分布
| Subtask | 分值 | 测试点编号 | 说明 |
|---|---|---|---|
| 0 | 10 | 1 | 样例 |
| 1 | 20 | 2~7 | 小规模 n,m≤10000 / 特殊: 零修改退化静态数颜色 / 单点区间 L=R |
| 2 | 15 | 8~11 | Hack: 颜色值遍布 1~10^6 边界 / Hack: 同一位置反复修改颜色再回退校验带修莫队时间戳 |
| 3 | 30 | 12~20 | 满规模 n,m=133333 带修莫队 O(n^{5/3}) 压力测试 |
| 4 | 25 | 21~25 | 随机修改与查询比例回归测试 |
出处:原题链接