【问题描述】蛇形矩阵是由 1 开始的自然数依次排列成的一个矩阵上三角形
【输入形式】 正整数 N表示层数,N 不大于 100
【输出形式】输出一个 N 行的蛇形矩阵,矩阵三角中同一行的数字用一个空格分开,行尾不要多余的空格。
【样例输入】
5
【样例输出】
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
思路:用数学思维找规律,按需输出即可
完整代码:
include <iostream>
using namespace std;
int main()
{
int N=0,x=1;//代表每一个输出的值
cin >> N;
int l=N;//代表每一行输出的数字个数
for (int i=0;i<N;i++)
{
int s=i+2,y=x;//s是每一行数与数之间的差,y是每一行输出的值
for (int j=0;j<l;j++)
{
cout << y << " ";
y+=s;
s++;
}
l--;
cout << endl;
x+=(i+1);
}
return 0;
}