题目描述
$\tt{Bob}$ 在 $n \times n$ 的画布上按以下规则涂色:
1. 初始全白($0$)
2. 每次选择 **整行** 或 **整列** 涂为红色($1$)或蓝色($2$),覆盖原有颜色
3. 涂色操作次数 $K$ 需满足 $0 \leq K \leq 4000$
现给定最终画布状态,判断是否能通过上述操作得到。若可行,输出操作序列;否则输出 $\tt{-1}$。
输入格式
第一行包含整数 $n$($1 \leq n \leq 2000$)
接下来 $n$ 行每行包含 $n$ 个整数 $a_{i,j}$($0 \leq a_{i,j} \leq 2$),表示最终画布颜色($\tt{0}$-白,$\tt{1}$-红,$\tt{2}$-蓝)
输出格式
若可行:
- 第一行输出操作次数 $K$ $(0\le K \le 4000)$
- 随后 $K$ 行每行格式为:`操作类型 索引 颜色`(操作类型包含$\tt{1}$-行,$\tt{2}$-列,索引从 $\tt{1}$ 开始,颜色包含$\tt{1}$-红,$\tt{2}$-蓝)
若不可行,输出 $\tt{-1}$
样例输入 #1
3
0 0 1
1 1 1
0 0 1
样例输入 #2
3
1 1 2
2 1 1
2 1 1
样例输入 #3
4
0 1 2 1
2 2 2 1
0 1 2 1
1 1 2 1
样例输出 #3
5
2 2 1
1 2 2
2 4 1
1 4 1
2 3 2
提示
第一个样例解释:
1. 对列 $3$ 涂红色,覆盖第 $1$、$2$、$3$ 行的该列
2. 对行 $2$ 涂红色,覆盖该行所有列