1151. L05-04输出蛇形矩阵

设行列下标均从 0 开始,n 阶矩阵可认为是有 nn 列的二维数组,设 n 阶矩阵 A 的第 i 行第 j 列的元素记为 A_{i-1,j-1}。则 n 阶蛇形矩阵 A 定义如下:

  1. 定义所有 (i,j) 满足 n+i-j=k 的元素 A_{i,j} 在第 k 条对角线。
  2. 定义在第 k(1\le k\le 2n-1) 条对角线的第 l 个元素是所有在该对角线的元素里行下标 il 小的元素。
  3. 若第 k 条对角线上第 l 个元素的下标是 (i,j),则:
    1. k=1A_{i,j}=1
    2. 否则,若 k 是偶数:
      1. l=1,则 A_{i,j} 的值是第 k-1 条对角线上第一个元素的值再加一。
      2. 否则,l > 1,则 A_{i,j} 的值是第 k 条对角线上第 l-1 个元素的值再加一。
    3. 否则,k 是奇数:
      1. l 是对角线最大序号,则 A_{i,j} 的值是第 k-1 条对角线上最后一个元素(l 最大元素)的值再加一。
      2. 否则,则 A_{i,j} 的值是第 k 条对角线上第 l+1 个元素的值再加一。

例如,n=5,有: A=\begin{pmatrix}15&7&6&2&1\\16&14&8&5&3\\22&17&13&9&4\\23&21&18&12&10\\25&24&20&19&11 \end{pmatrix} 给定 n,输出 n 阶蛇形矩阵。

输入

一行一个整数 n(1\le n\le 100)

输出

n 行每行 n 个整数代表 n 阶蛇形矩阵,每个元素用空格隔开,每行用换行符隔开。

样例

标准输入 复制文本
5
标准输出 复制文本
15 7 6 2 1
16 14 8 5 3
22 17 13 9 4
23 21 18 12 10
25 24 20 19 11

提示

23/10/31 本题题面与数据经过改善。先前已通过代码不重判,如果想重新验证你的代码在强化后数据是否可通过可重新交题。

登录以提交代码。
单点时限 1 秒
内存限制 128 MB
提交 3263
通过 1339