A74 - Board Game
Editorial
/
Time Limit: 1 sec / Memory Limit: 1024 MB
配点: 1000 点
問題文
1 から N までの整数が一個ずつ書かれた N \times N のマス目 P が与えられます。太郎君は、
- 隣接する 2 つの行を交換する
- 隣接する 2 つの列を交換する
という 2 種類の操作を繰り返すことで、すべての k に対して「整数 k が上から k 行目・左から k 列目のマスに存在する」ようにしたいです。最小何回の操作が必要ですか。
制約
- 2 \leq N \leq 100
入力
入力は以下の形式で標準入力から与えられます。
P_{i, j} は上から i 行目・左から j 列目に書かれた整数を表します。ただし、 P_{i, j} = 0 のマスには整数が書かれていません。ここで、各行・各列には「整数が書かれたマス」がちょうど 1 つ存在することが保証されています。
N P_{1, 1} P_{1, 2} \cdots P_{1, N} P_{2, 1} P_{2, 2} \cdots P_{2, N} \vdots P_{N, 1} P_{N, 2} \cdots P_{N, N}
出力
最小の操作回数を出力してください。
入力例 1
4 0 0 2 0 3 0 0 0 0 0 0 4 0 1 0 0
出力例 1
5