本文主要是介绍acwing——754. 平方矩阵 II,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
754. 平方矩阵 II
输入整数N,输出一个N阶的二维数组。
数组的形式参照样例。
输入格式
输入包含多行,每行包含一个整数N。
当输入行为N=0时,表示输入结束,且该行无需作任何处理。
输出格式
对于每个输入整数N,输出一个满足要求的N阶二维数组。
每个数组占N行,每行包含N个用空格隔开的整数。
每个数组输出完毕后,输出一个空行。
数据范围
0≤N≤1000≤N≤100
输入样例:
1
2
3
4
5
0
输出样例:
11 2
2 11 2 3
2 1 2
3 2 11 2 3 4
2 1 2 3
3 2 1 2
4 3 2 11 2 3 4 5
2 1 2 3 4
3 2 1 2 3
4 3 2 1 2
5 4 3 2 1
解题思路1:
y总思路:同时往右往下走
程序代码1:
#include<iostream>using namespace std;int main()
{int a[110][110];int n;while(cin >> n, n){for (int i = 0; i < n; i ++ ){int k = 1;for (int j = i; j < n; j ++ )a[i][j] = a[j][i] = k ++ ;}for (int i = 0; i < n; i ++ ){for (int j = 0; j < n; j ++ ) cout << a[i][j] << ' ';cout << endl;}cout << endl;}return 0;
}
解题思路2:
依旧观察坐标和数字的关系
程序代码2:
#include<iostream>using namespace std;int main()
{int n, a[110][110];while(cin >> n, n){for (int i = 0; i < n; i ++ ){for (int j = 0; j < n; j ++ )a[i][j] = abs(i - j) + 1;}for (int i = 0; i < n; i ++ ){for (int j = 0; j < n; j ++ ) cout << a[i][j] << ' ';cout << endl;}cout << endl;}return 0;
}
这篇关于acwing——754. 平方矩阵 II的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!