再帮黄队找男朋友

Time Limit
1s
Memory Limit
32768KB
Judge Program
Standard
Ratio(Solve/Submit)
0.00%(0/0)
Description:

今天5人连心决定串一个手链给黄队,这个手链由很多小的手链组成,每个手链上有一些珠子。
现在5人收集到了n个手链,对于第i个手链有ci个珠子,每个珠子有个数字pij代表它。
但这时候出题组5个人拥有了新power,每次操作变得不一样了,当x串联到y之后,x并不会消失
之后5个人进行了q次操作,将手链进行串联,有以下几种操作:

  • 操作1:
    将第x个手链正向链接到第y个手链最后,例如手链1的数字为(1,3,5)(1,3,5),手链2的数字为(6,8,9)(6,8,9),链接后2到1之后,链接后手链1的数字为(1,3,5,6,8,9)(1,3,5,6,8,9),手链2的数字为(6,8,9)(6,8,9)
  • 操作2:
    将第x个手链反向链接到第y个手链最后,例如手链1的数字为(1,3,5)(1,3,5),手链2的数字为(6,8,9)(6,8,9),链接后2到1之后,链接后手链1的数字为(1,3,5,9,8,6)(1,3,5,9,8,6),手链2的数字为(6,8,9)(6,8,9)
  • 操作3:
    将第x个手链正向链接到第y个手链最前,例如手链1的数字为(1,3,5)(1,3,5),手链2的数字为(6,8,9)(6,8,9),链接后2到1之后,手链1的数字为(6,8,9,1,3,5)(6,8,9,1,3,5),手链2的数字为(6,8,9)(6,8,9)
  • 操作4:
    将第x个手链反向链接到第y个手链最前,例如手链1的数字为(1,3,5)(1,3,5),手链2的数字为(6,8,9)(6,8,9),链接后2到1之后,链接后手链1的数字为(9,8,6,1,3,5)(9,8,6,1,3,5),手链2的数字为(6,8,9)(6,8,9)
  • 操作5:
    输出一行代表第x个手链的数字

需要注意一个操作情况:
例如有3条手链分别是(1,2,3),(4,5,6),(7,8,9)
当op=1,x=1, y=2之后,3条手链分别是(1,2,3),(4,5,6,1,2,3),(7,8,9)
当op=1,x=2, y=3之后,3条手链分别是(1,2,3),(4,5,6,1,2,3),(7,8,9,4,5,6,1,2,3)
当op=1,x=1, y=2之后,3条手链分别是(1,2,3),(4,5,6,1,2,3,1,2,3),(7,8,9,4,5,6,1,2,3)

大一的新生们注意了,这题是上一题的升级版,但也是可以做的,注意运用数据结构和时间空间复杂度知识,灵活运用,大胆动手

Input:

只有一组测试数据,第一行给出2个正整数,n和q。
后面n行,每行先给出一个数字c_ici,表示第ii个手链的长度,随后同一行再给出c_ici个数字pij
后面q行,每行3个数字,代表opk,xk,yk。当op=5时候,y是无用处的。

数据范围: n100000,0ci200000,i=1nci200000,q100000
1xk,ykn,xk!=yk,1pij1000000
保证每一次操作后0ci200000,保证输出的ck1000000

Output:

当操作为5时
输出一行,每行先给出一个数字ci,表示第ii个手链最后的长度,随后同一行再给出ci个数字pij每两个数字之间以空格分隔,末尾无空格。


Sample Input:
5 12
1 1
1 2
1 3
1 4
1 5
1 1 2
5 2 1
2 3 4
5 4 3
3 2 4
4 5 4
1 4 5
5 1 1
5 2 2
5 3 3
5 4 4
5 5 5
Sample Output:
2 2 1
2 4 3
1 1
2 2 1
1 3
5 5 2 1 4 3
6 5 5 2 1 4 3

Submit