#B3977. 更好的交换

更好的交换

题目描述

小 S 有一个奇怪的机关拼图。这个拼图可以看作一个 nnnn 列的方阵 AA,第 ii 行第 jj 列的位置上有一个正整数 Ai,jA_{i,j}

与寻常拼图不同的是,这个机关拼图上的数字不能随意移动,必须按照如下规则之一操作:

  • 选择拼图上的第 xx 行和第 yy 行,交换这两
  • 选择拼图上的第 xx 列和第 yy 列,交换这两

为了复原这个拼图,小 S 将会操作共 mm 次,每次操作格式如下:

  • 1 x y,表示交换第 xx 行和第 yy 行;
  • 0 x y,表示交换第 xx 列和第 yy 列。

请你输出复原后的拼图。

输入格式

第一行,两个正整数 nnmm,分别表示拼图的边长和总操作次数。

接下来 nn 行,每行 nn 个正整数 Ai,jA_{i,j},表示拼图上第 ii 行,第 jj 列上的数字。

接下来 mm 行,每行三个正整数 op,x,yop,x,y,其中 opop 表示操作类型,x,yx,y 代表被操作的行号或列号。

输出格式

输出共 nn 行,每行 nn 个正整数,表示复原后的拼图。

样例 #1

样例输入 #1

3 2
4 5 6
3 2 1
9 8 7
0 2 3
0 2 2

样例输出 #1

4 6 5
3 1 2
9 7 8

样例 #2

样例输入 #2

3 2
11 12 13
21 22 23
31 32 33
1 2 3
0 2 3

样例输出 #2

11 13 12
31 33 32
21 23 22

样例 #3

样例输入 #3

4 4
12 32 42 82
53 43 34 98
90 32 42 53
37 17 88 10
0 2 4
1 2 4
0 1 4
1 1 3

样例输出 #3

32 53 42 90
17 10 88 37
32 82 42 12
43 98 34 53

提示

数据范围

对于前 30%30\% 的数据,保证每一行数字相同;对于前 60%60\% 的数据,保证 1m3×1031\leq m\leq 3\times 10^3

对于 100%100\% 的数据,保证 1m1061\leq m\leq 10^61n,Ai,j1031\leq n,A_{i,j}\leq 10^31x,yn1\leq x,y\leq n0op10\leq op\leq 1