曼哈顿游客问题
1. 问题背景:
设想有个观光团在纽约曼哈顿区,一群游客决定从位于第59街与第8大道的拐角处步行到第42街与Lexington大道交叉处的克莱斯勒汽车大厦(Chrysler Building)。途中会有许多景点,我们假设游客想游览尽可能多的景点。游客们可以向东或向南步行,但即使如此,也有许多条路线可供他们选择。
下图为曼哈顿游客问题的示意图:
2.问题描述:
题目要求我们找到从左上到右下的最长路径(Attention: 不能走回头路,每个节点只能向),这种求解最优解的问题我们首先想到的是DP动规算法。当然,如果我们只需要可行解而不需要最优解,那么可以优先考虑贪心算法,但是贪心算法不一定能找到最优解。
下面我们将问题数据化,以下图为例:
如上图所示,游客想从A地到达B地,数据表示权重,即代价,我们需要求解从A到B的最大代价值。
3. 题解:
我们要想采用DP来求解该问题,首先应该考虑动规的三大特性:
(1)最优化原理(最优子结构性质)
&