#P1483. [HNOI2009]梦幻布丁

[HNOI2009]梦幻布丁

Description

NN 个布丁摆成一行,进行 MM 次操作。每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色。例如颜色分别为 1,2,2,11,2,2,1 的四个布丁一共有 33 段颜色。

Format

Input

第一行给出 N,MN,M 表示布丁的个数和好友的操作次数。

第二行 NN 个数 A1,A2,,ANA_1,A_2,\cdots, A_N,依次表示第 ii 个布丁的颜色。

从第三行起有 MM 行,对于每个操作:

若第一个数字是 11 表示要对颜色进行改变,其后的两个整数 X,YX,Y 表示将所有颜色为 XX 的变为 YYXX 可能等于 YY

若第一个数字为 22 表示要进行询问当前有多少段颜色。

Output

针对第二类操作即询问,依次输出当前有多少段颜色。

Samples

4 3
1 2 2 1
2
1 2 1
2
3
1

Limitation

对于 100%100\% 的数据:1N,M105,1Ai,X,Y1061\leq N,M\leq 10^5, 1\leq A_i,X,Y\leq 10^6