AT_agc037_d [AGC037D] Sorting a Grid

Description

[problemUrl]: https://atcoder.jp/contests/agc037/tasks/agc037_d $ N $ 行 $ M $ 列のマス目があります。 このマス目には $ 1 $ から $ NM $ までの整数がそれぞれ $ 1 $ つずつ書かれています。 上から $ i $ 行目、左から $ j $ 列目にあるマスに書かれている数は $ A_{ij} $ です。 あなたはこのマス目を以下の手順に従って並べ替える必要があります。 1. まず $ N $ 個の行それぞれに対して、その行に書かれている数を好きに並べ替える。 2. 次に $ M $ 個の列それぞれに対して、その列に書かれている数を好きに並べ替える。 3. 最後に $ N $ 個の行それぞれに対して、その行に書かれている数を好きに並べ替える。 最終的に上から $ i $ 行目、左から $ j $ 行目にあるマスに書かれている数が $ M\times\ (i-1)+j $ となるようにしたいです。 そのような並べ替え方を一つ構成してください。与えられた制約の下で、常に条件をみたすように並べ替えられることができることは保証されています。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ M $ $ A_{11} $ $ A_{12} $ $ ... $ $ A_{1M} $ $ : $ $ A_{N1} $ $ A_{N2} $ $ ... $ $ A_{NM} $

Output Format

以下の形式で並べ替え方を出力せよ。 > $ B_{11} $ $ B_{12} $ $ ... $ $ B_{1M} $ $ : $ $ B_{N1} $ $ B_{N2} $ $ ... $ $ B_{NM} $ $ C_{11} $ $ C_{12} $ $ ... $ $ C_{1M} $ $ : $ $ C_{N1} $ $ C_{N2} $ $ ... $ $ C_{NM} $ ただし、$ B_{ij} $ は手順 $ 1 $ を行った後に上から $ i $ 行目、左から $ j $ 行目にあるマスに書かれている数であり、 $ C_{ij} $ は手順 $ 2 $ を行った後に上から $ i $ 行目、左から $ j $ 行目にあるマスに書かれている数である。

Explanation/Hint

### 制約 - $ 1\ ≦\ N,M\ ≦\ 100 $ - $ 1\ ≦\ A_{ij}\ ≦\ NM $ - $ A_{ij} $ は相異なる