题目描述
小 S 有一个奇怪的机关拼图。这个拼图可以看作一个 n 行 n 列的方阵 A,第 i 行第 j 列的位置上有一个正整数 Ai,j。
与寻常拼图不同的是,这个机关拼图上的数字不能随意移动,必须按照如下规则之一操作:
- 选择拼图上的第 x 行和第 y 行,交换这两行;
- 选择拼图上的第 x 列和第 y 列,交换这两列。
为了复原这个拼图,小 S 将会操作共 m 次,每次操作格式如下:
1 x y
,表示交换第 x 行和第 y 行;
0 x y
,表示交换第 x 列和第 y 列;
请你输出复原后的拼图。
输入格式
第一行,两个正整数 n 和 m,分别表示拼图的行数、列数和总操作次数。
接下来 n 行,每行 n 个正整数 Ai,j,表示拼图上第 i 行,第 j 列上的数字。
接下来 m 行,每行三个正整数 op,x,y,其中 op 表示操作类型,x,y 代表被操作的行号或列号。
输出格式
输出共 n 行,每行 n 个正整数,表示复原后的拼图。
提示
样例 1 解释
第一次操作,交换了第 2 列和第 3 列;第二次操作,没有发生变化。
样例 2 解释
第一次操作,交换第 2 行和第 3 行,拼图变为:
11 12 1331 32 3321 22 23第二次操作,交换第 2 列和第 3 列,拼图变为:
11 13 1231 33 3221 23 22数据范围
对于前 30% 的数据,保证每一行数字相同;
对于前 60% 的数据,保证 1≤m≤3×103。
对于 100% 的数据,保证 1≤m≤106,1≤n,Ai,j≤103,1≤x,y≤n,0≤op≤1。