蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。
Input
本题有多组数据,每组数据由一个正整数N组成。(N不大于100)
Output
对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。
Sample Input
5
Sample Output
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
#include<iostream>
using namespace std;
int main()
{
int a;
cin >> a;
int * b = new int[a - 1];
int * c = new int[a - 1];
for (int i = 1; i < a; i++) {
b[i] = i + 1;
c[i] = i ;
}
b[0] = 0;
c[0] = 0;
int p = 1;
for (int i = 0; i < a; i++)
{
p = p + c[i];
int q = p;
for (int j = i+1; j < a ; j++) {
cout << q << " ";
q = q + b[j];
}
cout << q<< endl;
}
}
//这可能是我编过的最开心的代码了