#1323. [L2-2]三倍满世界

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: q3540555

题目描述

长廊, 排列着一扇又一扇门. 这是另一个世界, 这里是 Sanbaiman 世界.

“祝你玩得愉快!”

Sanbaiman 世界的定义如下:

  1. Sanbaiman 世界拥有若干扇门, 初始没有门。门的编号为 1,2,...,n1, 2, ..., n ,其中 nn 为门的个数。
  2. 门后可以是一个正整数,也可以是另一个 Sanbaiman 世界。
  3. Sanbaiman 世界允许在任意位置插入和删除一个门;如果插入的元素是一个 Sanbaiman 世界,则插入的肯定是一个空的 Sanbaiman 世界;如果删除的元素是一个 Sanbaiman 世界,则该 Sanbaiman 世界内部的所有门都将被一并删除,不留痕迹。

现在, 你站在了现实世界与 Sanbaiman 世界的交界的门口处, 再向前一步就将进入一个 Sanbaiman 世界.

Sanbaiman Automahime 是掌管 Sanbaiman 世界的神,祂继续说话,向你发号施令。随着祂发号施令,你的位置也有可能发生变化,但永远站在一扇门的前面。指令有四种:

1 p v:表示在门后世界的 pp 号门的后面插入一扇门,其后的门编号顺次后移。如果 p=0p = 0 ,则表示插入到世界的最前面。如果当前世界没有门,则保证 p=0p = 0 。如果 v=0v = 0 ,则表示插入的门后是一个空的 Sanbaiman 世界,否则表示插入的门后是一个正整数v

2 p:表示删除门后的 pp 号门,其后的门编号顺次前移。

3 p:表示你移动到门后的 pp 号门前。但是:如果 pp 号门后是一个正整数,则此次移动无效,你的位置不变;如果 p=0p = 0,则将你移动到你所在世界的入口处,如果你已经在现实世界,则此次移动无效,你的位置不变。移动完成后,命令所指代的「门后」一词的含义也在这个操作后改变。

4:写下门后世界的所有门之后的内容,具体格式参考下面的样例。注意,如果门后是另一个世界,则只输出一个[],不递归输出这个世界里的内容。

保证输入的所有指令都是合法的,即保证:

  1. 对于指令1有 0pn0 \le p \le nv0v \ge 0

  2. 对于指令2有 1pn1 \le p \le n

  3. 对于指令3有 0pn0 \le p \le n

  4. 不会出现 1,2,3,41, 2, 3, 4 以外的指令。

请你输出你写下的内容。

输入格式

第一行一个正整数 qq ,表示有 qq 次操作。

接下来 qq 行,每行表示一个指令,输入格式如前文中题目所述。

输出格式

对于每次操作4,输出一行,表示你需要写下的内容。

样例

样例输入

12
1 0 1
1 0 2
1 1 0
4
2 3
4
3 2
4
1 0 6
4
3 0
4

样例输出

{2 [] 1}
{2 []}
{}
{6}
{2 []}

数据范围与提示

1q501 \le q \le 50

1v1001 \le v \le 100 ,除了插入一个新 Sanbaiman 世界时 v=0v = 0