题目 753. 平方矩阵 I
输入整数 N ,输出一个 N 阶的回字形二维数组。
数组的最外层为 1 ,次外层为 2 ,以此类推。
输入格式
输入包含多行,每行包含一个整数 N 。
当输入行为 N=0 时,表示输入结束,且该行无需作任何处理。
输出格式
对于每个输入整数 N ,输出一个满足要求的 N 阶二维数组。
每个数组占 N 行,每行包含 N 个用空格隔开的整数。
每个数组输出完毕后,输出一个空行。
数据范围
0≤N≤100
输入样例:
1
2
3
4
5
0
输出样例:
1
1 1
1 1
1 1 1
1 2 1
1 1 1
1 1 1 1
1 2 2 1
1 2 2 1
1 1 1 1
1 1 1 1 1
1 2 2 2 1
1 2 3 2 1
1 2 2 2 1
1 1 1 1 1
240227 找规律 回形数值在离上下左右四边等距
的情况相同
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int n;
while (cin >> n, n)
{
for (int i = 1; i <= n; i ++ )
{
for (int j = 1; j <= n; j ++ )
{
int up = i, down = n - i + 1, left = j, right = n - j + 1;
cout << min(min(up, down), min(left, right)) << ' '; //离四边距离的最小值为回形数值
}
cout << endl;
}
cout << endl;
}
return 0;
}