AT_ttpc2019_e N法陣
Description
[problemUrl]: https://atcoder.jp/contests/ttpc2019/tasks/ttpc2019_e
$ N\ \times\ N $ マスの方眼に対して、上から $ i $ 行目、左から $ j $ 列目にあるマスに書かれた数を $ c_{i,j} $ で表します。
自然数 $ N $ が入力として与えられるので、以下の条件を満たすような配置が存在するか判定し、存在するならそのうちの一つを出力してください。
- 各マスに書かれている数は $ 1,\ 2,\ \ldots,\ N^2 $ のいずれかである
- 各マスに書かれている数は全て異なる
- 各行のマスに書かれた数の総和を $ N $ で割ったあまりが全て異なる
- 各列のマスに書かれた数の総和を $ N $ で割ったあまりが全て異なる
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $
Output Format
$ N\ \times\ N $ マスで条件を満たすような配置が存在しない場合は、 `No` を 1 行に出力せよ。
条件を満たすような配置が存在する場合は、そのうちの一つを以下の形式で出力せよ。
> Yes $ c_{1,1} $ $ c_{1,2} $ $ \ldots $ $ c_{1,N} $ $ c_{2,1} $ $ c_{2,2} $ $ \ldots $ $ c_{2,N} $ $ \vdots $ $ c_{N,1} $ $ c_{N,2} $ $ \ldots $ $ c_{N,N} $
Explanation/Hint
### 制約
- 入力は全て整数
- $ 1\ \le\ N\ \le\ 1000 $
### Sample Explanation 1
各行の総和を $ 3 $ で割ったあまりは、 - $ 1\ +\ 7\ +\ 9\ =\ 17\ \ $ なので $ \ 2 $ - $ 2\ +\ 8\ +\ 5\ =\ 15\ \ $ なので $ \ 0 $ - $ 3\ +\ 4\ +\ 6\ =\ 13\ \ $ なので $ \ 1 $ 各列の総和を $ 3 $ で割ったあまりは、 - $ 1\ +\ 2\ +\ 3\ =\ 6\ \ $ なので $ \ 0 $ - $ 7\ +\ 8\ +\ 4\ =\ 19\ \ $ なので $ \ 1 $ - $ 9\ +\ 5\ +\ 6\ =\ 20\ \ $ なので $ \ 2 $ よって、この配置は条件を満たします。