题号:NC202003
时间限制:C/C++/Rust/Pascal 6秒,其他语言12秒
空间限制:C/C++/Rust/Pascal 259 M,其他语言518 M
64bit IO Format: %lld
题目描述
墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答 墨墨的提问。墨墨会像你发布如下指令:
1、 Q L R代表询问你从第L支画笔到第 R支画笔中共有几种不同颜色的画笔。
2、 R P Col 把第P支画笔替换为颜色Col。 为了满足墨墨的要求,你知道你需要干什么了吗?
输入描述:
第1行两个整数N,M,分别代表初始画笔的数量以及墨墨会做的事情的个数。第2 行N个整数,分别代表初始画笔排中第i支画笔的颜色。第3行到第2+M行,每行分 别代表墨墨会做的一件事情,格式见题干部分。
输出描述:
对于每一个Query的询问,你需要在对应的行中给出一个数字,代表第L支画笔到 第R支画笔中共有几种不同颜色的画笔
示例1
输入
复制
6 5
1 2 3 4 5 5
Q 1 4
Q 2 6
R 1 2
Q 1 4
Q 2 6
说明
对于100%的数据,N≤10000,M≤10000,修改操作不多于1000次,所有的输入 数据中出现的所有整数均大于等于1且不超过10^6。