动态编程:通过二维矩阵的最大总和(更难的版本)

时间:2018-05-10 01:13:58

标签: algorithm matrix dynamic-programming

它来自我的算法类,我想我真的需要一些帮助。

给定成本矩阵Happiness [] []其中Happiness [i] [j]表示使用坐标(i,j)访问单元格的幸福,您从右上角开始,到左下角结束。我们希望找到最大的幸福 您只能在矩阵中向下或向左移动。

但我们在这里有两个限制:
1.您可以选择跳过零行或多行,这意味着如果您愿意,可以先跳到最后一行 2.当你选择左转时,费用=成本 - 1.连续第二次离开导致费用=成本 - 2,但是当你下降然后向左转,它会刷新。 这是一个例子: enter image description here

这是步骤:
enter image description here

我不确定我是对还是错。我用自上而下。 我的解决方案 要达到单元格矩阵[i] [j],您必须从一个单元格更高或者离开原始单元格。

我的复发:(我卡在这里)enter image description here 我认为基本情况是最左边的行和最下面的列 计算机如何检查连续步骤并知道是否可以选择解决方案?

我知道发布整个问题很奇怪,但我无法更好地简化问题......

0 个答案:

没有答案