Problem A: 有趣的袜子

Problem A: 有趣的袜子

Time Limit: 1 Sec  Memory Limit: 512 MB
Submit: 169  Solved: 21
[Submit] [Status] [Web Board] [Creator:]

Description

很多人其实对自己的袜子很挑剔,尤其有人对袜子的颜色很感兴趣,比如xxx就喜欢色彩比较多的袜子,现在我们有n个袜子,他们分别有c_i种
现在xxx有两个操作:
1:xxx想统计l到r区间里,val颜色的袜子有多少只
2:(当然如果只查询袜子有多少只太简单了,所以再加一个操作),给出一个i位置,让i和i+1位置袜子交换


Input

输入一个n,q,代表n个袜子,q个操作   (1 <= n,q <= 3e5)
接下来输入n个数,代表第i个袜子的颜色   (1 <= c[i] <= 3e5)
接下来q行,代表要进行的操作有两种:
1 l r c 代表查询l到r区间里,c颜色的袜子有多少只
2 i  对于i位置的袜子和i + 1位置的袜子进行交换 (1 <= i < n)

Output

对于每个操作1输出一个答案,c颜色的袜子有多少只

Sample Input Copy

6 5 
1 2 3 2 3 3  
1 1 3 2 
1 4 6 3  
2 3 
1 1 3 2  
1 4 6 3

Sample Output Copy

1 
2 
2 
3