QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 128 MB Total points: 100

#16218. 梦幻布丁

Statistics

一天,小徐的好友邀请他去吃布丁,于是小徐高高兴兴地来到好友家。哇!这么多五彩缤纷的布丁!好友说:“在我们开吃前先玩会儿游戏吧。”于是他将布丁摆成一行,接着说:“我可以把某种颜色的布丁全部变成另一种颜色,我还会在某些时刻问你当前一共有多少段颜色。例如:颜色分别为 1、2、2、1 的四个布丁一共有 3 段颜色。”

输入格式

第一行包含两个整数 $n$ 和 $m$,分别表示布丁的个数和好友操作的次数,$n$ 和 $m$ 之间用空格隔开,第二行包含用空格隔开的 $n$ 个整数 $A_1, A_2, \cdots, A_n$,其中 $A_i(1 \le i \le n)$ 表示第 $i$ 个布丁的颜色。从第三行起的 $m$ 行,依次描述 $m$ 个操作。对每个操作,若第一个数是 $1$,则表示好友要改变颜色,这时空格后依次接两个用空格隔开的整数 $x$ 和 $y(x$ 可能等于 $y)$,表示执行该操作后所有颜色为 $x$ 的布丁被变成颜色 $y$。若第一个数是 $2$,则表示好友要询问目前有多少段颜色,这时应该输出一个整数回答。输入的数据保证 $0< n,m< 100\,001$;$0< A_i,x,y< 1\,000\,000$。

输出格式

输出的行数为 $m$ 次操作中第二类操作(即:询问目前有多少段颜色)的数目,针对每次询问,对应行依次输出当时有多少段颜色。

样例数据

input.txt

4 3
1 2 2 1
2
1 2 1
2

output.txt

3
1

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.