#AT2543. C - Cards Query Problem
C - Cards Query Problem
当前没有测试数据。
C-卡片查询问题
得分: $300$ 分
问题描述
我们有 $N$ 个编号为 $1$ 到 $N$ 的初始为空的盒子,以及无限数量的空白卡片。
按照顺序处理 $Q$ 个查询。以下是三种类型的查询。
1 i j
$\colon$ 在一张空白卡片上写下数字 $i$ 并将其放入盒子 $j$。2 i
$\colon$ 按升序报告盒子 $i$ 中所有卡片上的数字。3 i
$\colon$ 按升序报告包含数字 $i$ 的盒子的盒子编号。
注意以下事项。
- 对于第二种查询,如果盒子 $i$ 包含多张相同数字的卡片,则应该将该数字打印的次数与这些卡片的数量相同。
- 对于第三种查询,即使一个盒子包含多张数字 $i$ 的卡片,也应该只打印一次该盒子的盒子编号。
约束
- $1 \leq N, Q \leq 2 \times 10^5$
- 对于第一种查询:
- $1 \leq i \leq 2 \times 10^5$
- $1 \leq j \leq N$
- 对于第二种查询:
- $1 \leq i \leq N$
- 当进行该查询时,盒子 $i$ 包含一些卡片。
- 对于第三种查询:
- $1 \leq i \leq 2 \times 10^5$
- 当进行该查询时,一些盒子包含一个数字 $i$ 的卡片。
- 最多报告 $2 \times 10^5$ 个数字。
- 输入中的所有值都是整数。
输入
从标准输入获取输入,输入的格式如下:
其中,$\mathrm{query}_q$ 表示第 $q$ 个查询,查询格式如下:
``` $1$ $i$ $j$ ``` ``` $2$ $i$ ``` ``` $3$ $i$ ```输出
按照顺序回答第二种和第三种查询。
对于每个查询,打印一行,包含按升序排列的要报告的元素,元素之间有空格。
5
8
1 1 1
1 2 4
1 1 4
2 4
1 1 4
2 4
3 1
3 2
1 2
1 1 2
1 4
4
让我们按顺序处理查询。
- 将数字 $1$ 写在卡片上并放入盒子 $1$。
- 将数字 $2$ 写在卡片上并放入盒子 $4$。
- 将数字 $1$ 写在卡片上并放入盒子 $4$。
- 盒子 $4$ 包含数字 $1$ 和 $2$ 的卡片。
- 按照这个顺序打印数字 $1$ 和 $2$。
- 将数字 $1$ 写在卡片上并放入盒子 $4$。
- 盒子 $4$ 包含数字 $1$、$1$ 和 $2$ 的卡片。
- 注意应该将数字 $1$ 打印两次。
- 盒子 $1$ 和 $4$ 包含数字 $1$ 的卡片。
- 注意,即使盒子 $4$ 包含两张数字 $1$ 的卡片,也只应该打印盒子编号 $4$ 一次。
- 盒子 $4$ 包含数字 $2$ 的卡片。
1
5
1 1 1
1 2 1
1 200000 1
2 1
3 200000
1 2 200000
1