gpt4 book ai didi

c++ - 二维数组 C++ 三角形

转载 作者:行者123 更新时间:2023-11-30 05:38:52 28 4
gpt4 key购买 nike

我正在尝试用 C++ 创建一个程序,该程序将数字的三角形模式放入二维数组中。

示例:

    1

3 4

5 9 2

9 4 6 1

顶行是一个数字(整数),三角形的每一行比它上面的行多一个数字。

一旦通过 for 循环输入和/或检查了三角形,程序需要从上到下遍历三角形并记录每条路径的所有可能总和;

沿三角形向下的路径必须始终与其上方行中的数字相邻。

在向下遍历三角形时,每个“路径”都应存储在一个新数组中,以便可以显示路径。在记录下三角形中每条路径的总和后,程序应比较它们并显示总和最小的路径。

感谢@Beta,到目前为止我所做的更改到目前为止我有这个:

int main()
{
int row = 0;
int col = 0;

int A[4][4] = {{2},{8,9},{3,4,5},{6,2,9,1}};

for (row = 0; row < 4; row++)
{
for (col = 0; col <= row; col++)
{
cout << A[row][col] << " ";
}
cout << endl;

到目前为止我的输出是:

2

8 9

3 4 5

6 2 9 1

最佳答案

我想你正在寻找的技巧是这样的:

for (col = 0; col <= row; col ++)

我无法解析你问题的最后一部分(“在那之后......”)。

编辑:

让三角形看起来对称的问题是每行开头打印空格的问题。使用上面的技巧,您应该能够算出一个数。

关于考虑所有路径并显示总和最小的路径,您尝试了什么? 如果您不熟悉广度优先搜索和深度优先搜索,复制数组和数组的数组指针,您可能还没有准备好进行此练习。

关于c++ - 二维数组 C++ 三角形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32570887/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com