Loops 编写似乎总是返回0的最大成本算法。为什么它在整个数据集中循环,只返回';0';?

Loops 编写似乎总是返回0的最大成本算法。为什么它在整个数据集中循环,只返回';0';?,loops,iteration,Loops,Iteration,此函数遍历数组并返回最大成本 这是文件中的.in 它读取多少组数据[3],然后读取每组数据[4]中的多少个元素;P和E表示起始位置和结束位置 34 p 2 4 3 29669 13 3 8 E 您的计划中有一些问题: (1) 您的第一个for循环应该如下所示: for(int i = 0; i <= n; i++) for(int i = 0; i <= m; i++) return temp[m - 1][n - 1]; (3) 最后,您的return语句应该如下所示: f

此函数遍历数组并返回最大成本

这是文件中的.in

它读取多少组数据[3],然后读取每组数据[4]中的多少个元素;P和E表示起始位置和结束位置

34

p 2 4 3

29669

13 3 8 E



您的计划中有一些问题:

(1) 您的第一个
for
循环应该如下所示:

for(int i = 0; i <= n; i++)
for(int i = 0; i <= m; i++)
return temp[m - 1][n - 1];
(3) 最后,您的
return
语句应该如下所示:

for(int i = 0; i <= n; i++)
for(int i = 0; i <= m; i++)
return temp[m - 1][n - 1];

一旦解决了这些问题,您应该会得到预期的输出。

您的程序中有一些问题:

(1) 您的第一个
for
循环应该如下所示:

for(int i = 0; i <= n; i++)
for(int i = 0; i <= m; i++)
return temp[m - 1][n - 1];
(3) 最后,您的
return
语句应该如下所示:

for(int i = 0; i <= n; i++)
for(int i = 0; i <= m; i++)
return temp[m - 1][n - 1];

一旦您解决了这些问题,您应该会得到预期的输出。

您编写的前两个循环不正确

第一个循环使用

for(int i = 0; i <= 0; i++)
这应该是:

temp[0][i] = sum + cost[0][i];
sum += temp[0][i];
这将确保正确初始化成本网格

最后,您的返回语句不正确


它应该是
返回温度[m-1][n-1]
而不是
返回温度[m][n]
您编写的前两个循环不正确

第一个循环使用

for(int i = 0; i <= 0; i++)
这应该是:

temp[0][i] = sum + cost[0][i];
sum += temp[0][i];
这将确保正确初始化成本网格

最后,您的返回语句不正确


它应该是
返回温度[m-1][n-1]
而不是
返回温度[m][n]

如果当前输出与所需输出不匹配,并且您不知道原因,则是时候开始调试了。如果您不确定如何执行此操作,请查看:。它不会解决你的直接问题,但它会给你提供你可以遵循的步骤,这些步骤应该可以帮助你自己解决问题,或者即使这样做不成功,那么至少可以帮助你更好地隔离你的问题,这样你的问题可以更集中,更容易回答。你在哪里定义m和n,请清理代码,使其连贯一致。添加注释,例如
//first loop
//second loop
,然后在解释代码时参考文本中的注释如果当前输出与所需输出不匹配,并且您不知道原因,则是时候开始调试了。如果您不确定如何执行此操作,请查看:。它不会解决你的直接问题,但它会给你提供你可以遵循的步骤,这些步骤应该可以帮助你自己解决问题,或者即使这样做不成功,那么至少可以帮助你更好地隔离你的问题,这样你的问题可以更集中,更容易回答。你在哪里定义m和n,请清理代码,使其连贯一致。添加注释,例如
//first loop
//second loop
,然后在解释代码时参考文本中的注释。看起来你稍微击败了我。看起来你稍微击败了我。