题目二十一
D. Big Brush
[原题链接]
[题目翻译]
你在一张大小为n×m的画布上发现了一幅画。画布可以表示为一个有n行m列的网格。每个单元格中都有一些颜色。单元格(i,j) 表示 ci,j.
在画的附近,你还发现了一个2*2的正方形画笔,所以画布肯定是按以下方式绘制的:最初,没有单元格被绘制。那么,以下的涂操作已经进行了几次:
选择两个整数i和j(1≤i<n, 1≤j<m)和某个颜色k(1≤k≤nm)。
(i,j) , (i+1,j), (i,j+1), (i+1,j+1)的颜色为k。
[输入]
输入的第一行包含两个整数n和m (2≤n,m≤1000)——表示画布的尺寸。
在接下来的n行输入的第i行中。将会有m个整数。第j个是(1≤ai,j≤nm)——单元格(i,j)的颜色。
[输出]
如果没有解,则输出单个整数-1.
否则,在第一行,打印一个整数q(1≤q≤nm)——表示操作的次数。
接下来,按顺序打印操作。在下一个q行的第k行中,打印三个整数 i, j, c (1≤i<n, 1≤j<m, 1≤c≤nm) 来描述第k次操作。
如果有多个解,打印任意一个。