AT_rco_contest_2019_qual_b ファーマーXの収穫計画
Description
[problemUrl]: https://atcoder.jp/contests/rco-contest-2019-qual/tasks/rco_contest_2019_qual_b
家庭菜園を始めたXは、野菜の手入れと収穫の計画を立てています。
Xの庭は $ N $ 行 $ N $ 列の区画からなり、区画の$ i $ 行 $ j $ 列目には品質が $ A_{i,j} $ の野菜があります。各区画からはそれぞれ一度だけ野菜を収穫することができます。
Xは以下のどちらかの操作を最大で $ M $ 回実行することができます。各操作は、野菜がまだ収穫されていない区画をひとつ指定して実行します。野菜が既に収穫された区画を指定した場合、何もしません。
- (1)**手入れ**: 選んだ区画にある野菜の品質を $ 1 $ 増やします。
- (2)**収穫**: 選んだ区画とその周辺の区画から野菜を収穫します。収穫するためには次の条件を満たす必要があります。
- 選んだ区画にある野菜の品質を $ K $とします。
- 選んだ区画から「まだ収穫されていない品質$ K $の野菜がある区画」だけを辿って上下左右に連結している区画の集合を $ S $ とします。( $ S $ には選んだ区画自身を含みます。)
- $ S $ に含まれる区画が $ K $ 個以上の場合、$ S $ に含まれる全ての区画にある野菜を収穫します。
- $ S $ に含まれる区画が $ K $ 個未満の場合、何もしません。
Xが収穫する野菜の品質の合計値がなるべく大きくなるような計画を立ててください。
各テストケースの得点およびこの問題の得点は、次のように計算されます。
- 1つのテストケースでは、Xが収穫する野菜の品質の合計がそのまま得点になります。
- テストケースは全部で $ 50 $ 個あります。各テストケースの得点の合計が、この問題の得点になります。
Input Format
入力は以下の形式で標準入力から与えられます。
```
\(\begin{array}{lll}
N ~ M & & \\
A_{ 0,0 } & \ldots & A_{ 0,N-1 } \\
\vdots & \ddots & \vdots \\
A_{ N-1,0 } & \ldots & A_{ N-1,N-1 }
\end{array}\)
```
- $ N $ は庭の大きさを表す整数で、$ N\ =\ 50 $ を満たします。
- $ M $ は許容される操作回数の最大値を表す整数で、$ M\ =\ 2500 $ を満たします。
- $ A_{i,j} $ は $ i $ 行 $ j $ 列目の区画にある野菜の品質を表す整数で、$ 1\
Output Format
1行につき操作をひとつ、最大 $ M $ 行出力してください。
```
\(\begin{array}{lll}
\mathit{op}_0 & r_0 & c_0 \\
\mathit{op}_1 & r_1 & c_1 \\
\vdots & & \\
\end{array}\)
```
\\(\\mathit{op}\_i\\)は **手入れ**をする場合は`1`を、**収穫**する場合は`2`を出力し、その後に操作対象の区画($ r_i $ 行 $ c_i $ 列目)をスペース区切りで出力してください。
Explanation/Hint
### テストケースの生成について
各ケースはテストケースジェネレータによって生成されています。
テストケースジェネレータは\\(A\_{i,j}\\) を \\(\[1, 9\]\\) の範囲の整数から一様ランダムに生成します。
テストケースジェネレータはページ下部のリンクより提供しています。
### ジェネレータとテスターとサンプル入力データ
テストケースジェネレータ・テスター・サンプル入力データを次のリンクから提供しています。
[ジェネレータ・テスター・サンプル入力データ](https://github.com/recruit-communications/rco-contest-2019/tree/master/qual_B/tester)
### ビジュアライザ
入力ファイルと出力ファイルから、得点の計算および結果を可視化するビジュアライザを用意しました。
- このビジュアライザはデスクトップ版の [Google Chrome](https://www.google.co.jp/chrome/browser/desktop/index.html) および [Mozilla Firefox](https://www.mozilla.org/firefox/new/) の最新バージョン上で動作確認を行っています。全てのブラウザ環境で動作することを保証していません。特に、Internet Explorer 上では動作しないことが確認されています。
- このビジュアライザ上で計算された得点は、当コンテストでの得点ではありません。解答を AtCoder 上で提出する事によって採点が行われます。また、ビジュアライザ上で計算された得点は、当コンテスト上での得点を保証するものではありません。
- このビジュアライザを使用することによるあらゆる損害は保障しかねますので、予めご了承ください。
ビジュアライザは次のリンクからも提供しています。使用法についてもリンク先に記述があります。
[ビジュアライザ](https://github.com/recruit-communications/rco-contest-2019/tree/master/qual_B/visualizer)