我正在寻找生成 4 阶 M 算术三角形。这里描述:http ://www.sciencedirect.com/science/article/pii/S0024379509003577?np=y
它看起来像这样:
1
1 1 1 1
1 2 3 4 3 2 1
1 3 6 10 12 12 10 6 3 1
1 4 10 20 31 40 44 40 31 20 10 4 1
等等。在我的 4 阶 M 算术三角形中,前两行总是不变的。从那时起,每个项都是它上面的项和它上面的项左侧的 3 个项的总和。
定义包含这些数字的矩阵大小的变量如下
int y = user.nextInt();
int max = 3*y + 1;
int[][] m-arith = new int [y][max];
如何在代码中生成 M 算术三角形?以及在所有没有用数字填充的地方填零?我可以像这样手动声明矩阵(只显示几行):
int[][] m-arith = {
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{1,2,3,4,3,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
};
但是,如果我需要的不仅仅是几行,这似乎是一种巨大的时间浪费。
有任何想法吗?
编辑:就此而言,生成任意阶的 M 算术三角形的代码会很有趣。但是,我正在寻找特定于 4 阶三角形的解决方案。