#aBC279F. [ABC279F] BOX

[ABC279F] BOX

AT_abc279_f [ABC279F] BOX

题目描述

NN 个箱子 1,2,,N1,2,\dots,N,以及 1010010^{100} 个球 1,2,,101001,2,\dots,10^{100}。最开始时,第 ii 个箱子中只放有第 ii 个球。

接下来会进行共计 QQ 次如下操作,请你依次处理:

操作分为三种类型,类型为 1,2,31,2,3

类型 11:将箱子 YY 中的所有球全部放入箱子 XX。保证 XYX \neq Y

1 XX YY

类型 22:设当前所有箱子中球的总数为 kk,则将编号为 k+1k+1 的球放入箱子 XX

2 XX

类型 33:询问编号为 XX 的球当前所在的箱子的编号。

3 XX

输入格式

输入按以下格式从标准输入读入。
其中 opiop_i 表示第 ii 次操作。

NN QQ
op1op_1
op2op_2
\vdots
opQop_Q

输出格式

对于每个类型 33 的操作,输出答案,每行一个整数。

输入输出样例 #1

输入 #1

5 10
3 5
1 1 4
2 1
2 4
3 7
1 3 1
3 4
1 1 4
3 7
3 6

输出 #1

5
4
3
1
3

说明/提示

约束条件

  • 输入均为整数。
  • 2N3×1052 \leq N \leq 3 \times 10^5
  • 1Q3×1051 \leq Q \leq 3 \times 10^5
  • 对于类型 11 的操作,1X,YN1 \leq X,Y \leq NXYX \neq Y
  • 对于类型 22 的操作,1XN1 \leq X \leq N
  • 对于类型 33 的操作,保证此时编号为 XX 的球一定在某个箱子中
  • 至少有一次类型 33 的操作

样例解释 1

本输入包含 1010 次操作。

  • 11 次操作为类型 33。球 55 在箱子 55 中。
  • 22 次操作为类型 11。将箱子 44 的所有球放入箱子 11
  • 此时箱子 11 中有球 1,41,4,箱子 44 为空。
  • 33 次操作为类型 22。将球 66 放入箱子 11
  • 44 次操作为类型 22。将球 77 放入箱子 44
  • 55 次操作为类型 33。球 77 在箱子 44 中。
  • 66 次操作为类型 11。将箱子 11 的所有球放入箱子 33
  • 此时箱子 33 中有球 1,3,4,61,3,4,6,箱子 11 为空。
  • 77 次操作为类型 33。球 44 在箱子 33 中。
  • 88 次操作为类型 11。将箱子 44 的所有球放入箱子 11
  • 此时箱子 11 中有球 77,箱子 44 为空。
  • 99 次操作为类型 33。球 77 在箱子 11 中。
  • 1010 次操作为类型 33。球 66 在箱子 33 中。

由 ChatGPT 4.1 翻译