#ABC109D. Make Them Even

Make Them Even

题目描述

There is a grid of square cells with HH horizontal rows and WW vertical columns. The cell at the ii-th row and the jj-th column will be denoted as Cell (i,j)(i, j).

In Cell (i,j)(i, j), aija_{ij} coins are placed.

You can perform the following operation any number of times:

Operation: Choose a cell that was not chosen before and contains one or more coins, then move one of those coins to a vertically or horizontally adjacent cell.

Maximize the number of cells containing an even number of coins.

有一个由正方形单元格组成的网格,横向有 HH 行,纵向有 WW 列。位于第 ii 行和第 jj 列的单元格称为单元格 (i,j)(i, j)

(i,j)(i, j) 单元格中,放置了 aija_{ij} 枚硬币。

您可以多次执行下面的操作:

操作:选择一个之前未被选中且包含一个或多个硬币的单元格,然后将其中一个硬币移动到垂直或水平相邻的单元格中。

最大化含有偶数硬币的单元格数量。

输入格式

输入内容按以下格式标准输入:

HH WW
a11a_{11} a12a_{12} ...... a1Wa_{1W}
a21a_{21} a22a_{22} ...... a2Wa_{2W}
::
aH1a_{H1} aH2a_{H2} ...... aHWa_{HW}

输出格式

按以下格式打印一个操作序列,使含有偶数枚硬币的单元格数达到最大:

$N$  
$y_1$ $x_1$ $y_1'$ $x_1'$  
$y_2$ $x_2$ $y_2'$ $x_2'$  
$:$  
$y_N$ $x_N$ $y_N'$ $x_N'$  

也就是说,在第一行打印一个介于 00H×WH \times W (含)之间的整数 NN ,表示操作次数。

(i+1)(i+1)1iN1 \leq i \leq N )这一行,打印四个整数 yi,xi,yiy_i, x_i, y_i'xix_i'1yi,yiH1 \leq y_i, y_i' \leq H1xi,xiW1 \leq x_i, x_i' \leq W ),代表 ii (th)次操作。这四个整数表示将放置在 (yi,xi)(y_i, x_i) 单元格中的一枚硬币移动到垂直或水平相邻的 (yi,xi)(y_i', x_i') 单元格的操作。

请注意,如果指定的操作违反了问题陈述中的规范或输出格式无效,则会导致_错误答案_。

样例 #1

样例输入 #1

2 3
1 2 3
0 1 1

样例输出 #1

3
2 2 2 3
1 1 1 2
1 3 1 2

样例 #2

样例输入 #2

3 2
1 0
2 1
1 0

样例输出 #2

3
1 1 1 2
1 2 2 2
3 1 3 2

样例 #3

样例输入 #3

1 5
9 9 9 9 9

样例输出 #3

2
1 1 1 2
1 3 1 4

说明

数据规模与约定

  • 所有输入值均为整数。
  • 1H,W5001 \leq H, W \leq 500
  • 0aij90 \leq a_{ij} \leq 9

样例 11 解释

经过以下一系列操作后,每个单元格都包含偶数枚硬币:

  • (2,2)(2, 2) 单元格中的硬币移动到 (2,3)(2, 3) 单元格。
  • 将单元格 (1,1)(1, 1) 中的硬币移动到单元格 (1,2)(1, 2)
  • 将单元格 (1,3)(1, 3) 中的一枚硬币移动到单元格 (1,2)(1, 2)