P14247 [CCPC 2024 Shandong I] 矩阵

题目描述

构造一个 $n$ 行 $n$ 列的矩阵,满足以下所有条件: - 矩阵的元素是从 $1$ 到 $2n$ 的整数(含两端)。 - 每个从 $1$ 到 $2n$ 的整数(含两端)在矩阵里至少出现一次。 - 令 $a_{i, j}$ 表示第 $i$ 行第 $j$ 列的元素,恰有一个整数四元组 $(x, y, z, w)$ 满足: - $1 \le x < z \le n$。 - $1 \le y < w \le n$。 - $a_{x, y}$,$a_{x, w}$,$a_{z, y}$,$a_{z, w}$ 互不相同。

输入格式

每个测试文件仅有一组测试数据。 第一行输入一个整数 $n$($2\leq n\leq 50$)表示矩阵的大小。

输出格式

如果可以构造出这样的矩阵,首先输出一行 $\texttt{Yes}$。接下来输出 $n$ 行,其中第 $i$ 行输出 $n$ 个由单个空格分隔的整数 $a_{i, 1}, a_{i, 2}, \cdots, a_{i, n}$($1 \le a_{i, j} \le 2n$),其中 $a_{i, j}$ 表示矩阵第 $i$ 行第 $j$ 列的元素。如果有多种合法答案,您可以输出任意一种。 如果无法构造出这样的矩阵,只需要输出一行 $\texttt{No}$。