题目名称:队列增长
提交通过率:18%
测评方式
标准输入输出
时间限制
3000ms
内存限制
128MB
题目描述:
有
n个双端队列,所有队列只有一个初始元素,第
i个队列的初始元素就是
i。
接下来有
q次操作,操作有三种:
1 a b:在第a个队列末尾加入元素b。
2 a b:在第a个队列开头加入元素b。
3 a b:把第b个队列拼到第a个队列后面。第b个队列直接消失,在后面的操作里不会再出现。(在这种操作中,数据保证
≠
a
=b)
最后输出最长的队列的所有元素,从队头到队尾。如果有多个最长的队列,输出编号最小的那个。
输入描述
第一行输入两个整数
n和
q.
下面
q行中每行输入三个整数,代表一组操作。含义见题目描述。
输出描述
输出一行,为最长队列的所有元素
样例1
输入
2 3
1 1 2
2 2 3
3 1 2
输出
1 2 3 2
提示
对于40%的数据,
n,q≤1000
。
对于另外20%的数据,只有操作1和2。
对于100%的数据,
n,q≤10
^6
,队列中的元素绝对值不超过
10^9。