维护一个长为 n 的序列 ai,有 m 次操作。
- 将区间 [l,r] 的值修改为 x。
- 询问区间 [l,r] 出现了多少种不同的数,也就是说同一个数出现多次只算一个。
输入格式
第一行两个整数 n,m。
第二行 n 个整数表示 ai。
后面 m 行每行为 1 l r x 或者 2 l r ,分别表示修改和询问。
输出格式
对于每个询问,输出一个数表示答案。
样例数据
样例输入
5 5
1 2 3 4 5
2 1 5
1 2 3 4
2 1 5
2 3 3
2 2 4
样例输出
5
3
1
1
子任务
Idea:nzhtl1477,Solution:nzhtl1477,Code:nzhtl1477,Data:nzhtl1477
1≤n,m≤105,1≤ai≤109。