#B1311. 填幻方

填幻方

【题目描述】

对于奇数 NN,按如下规则构造 N×NN\times N 幻方:先在第一行正中填 11;之后每次尝试向上一行、向右一列移动,行列越界则循环到另一侧;若目标格为空则填入下一个数,否则从上一次填数的位置向下一格填入。

请输出构造出的幻方。


【输入描述】

输入一行一个正奇数 NN。

保证:

  • 3≤N≤213\le N\le 21。
  • NN 为奇数。

【输出描述】

输出 NN 行,每行 NN 个整数,相邻整数之间用一个空格分隔。


【样例 1】

【样例 1 输入】

3

【样例 1 输出】

8 1 6
3 5 7
4 9 2

【样例 1 解释】

每行、每列和两条对角线的和均为 1515。


【样例 2】

【样例 2 输入】

5

【样例 2 输出】

17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9