A8780. Below the Diagonal
编程题
普及/提高-
知识点
题目描述
The first line contains an integer $n$ $(2<=n<=1000)$ — the number of rows and columns. Then follow $n-1$ lines that contain one's positions, one per line. Each position is described by two integers $x_{k},y_{k}$ $(1<=x_{k},y_{k}<=n)$ , separated by a space. A pair $(x_{k},y_{k})$ means that the cell, which is located on the intersection of the $x_{k}$ -th row and of the $y_{k}$ -th column, contains one.
It is guaranteed that all positions are distinct.
It is guaranteed that all positions are distinct.
输入格式
Print the description of your actions. These actions should transform the matrix to the described special form.
In the first line you should print a non-negative integer $m$ $(m<=10^{5})$ — the number of actions. In each of the next $m$ lines print three space-separated integers $t,i,j$ $(1<=t<=2,1<=i,j<=n,i≠j)$ , where $t=1$ if you want to swap rows, $t=2$ if you want to swap columns, and $i$ and $j$ denote the numbers of rows or columns respectively.
Please note, that you do not need to minimize the number of operations, but their number should not exceed $10^{5}$ . If there are several solutions, you may print any of them.
In the first line you should print a non-negative integer $m$ $(m<=10^{5})$ — the number of actions. In each of the next $m$ lines print three space-separated integers $t,i,j$ $(1<=t<=2,1<=i,j<=n,i≠j)$ , where $t=1$ if you want to swap rows, $t=2$ if you want to swap columns, and $i$ and $j$ denote the numbers of rows or columns respectively.
Please note, that you do not need to minimize the number of operations, but their number should not exceed $10^{5}$ . If there are several solutions, you may print any of them.
输出格式
无
输入输出样例
输入 #1
2 1 2
输出 #1
2 2 1 2 1 1 2
输入 #2
3 3 1 1 3
输出 #2
3 2 2 3 1 1 3 1 1 2
输入 #3
3 2 1 3 2
输出 #3
0