二维动态规划

简介:

给定N个点,任意两个点之间都联通,找出两条路径(涵盖所有点),使他们的和最小

首先把点从左往右编号0-n-1
那么原题相当于找两条从左往右的不想交的路线 
dp[i]表示两条路走到了i和i-1最少的花费是多少 
答案是dp[n-1]+cost[n-2][n-1] 
dp[1]=cost[0][1] 
dp[i]=min(dp[i-1]+cost[i-2][i], dp[i-2]+cost[i-2][i-1]+cost[i-3][i], dp[i-2]+cost[i-3][i-1]+cost[i-2][i])

本文转自博客园知识天地的博客,原文链接:二维动态规划,如需转载请自行联系原博主。

相关文章
|
8月前
|
算法 测试技术 C#
【动态规划】【前缀和】【和式变换】100216. K 个不相交子数组的最大能量值
【动态规划】【前缀和】【和式变换】100216. K 个不相交子数组的最大能量值
|
3月前
|
算法 Java 编译器
【递归算法】斐波那契变形问题(C/C++)
【递归算法】斐波那契变形问题(C/C++)
|
8月前
|
机器人
动态规划矩阵
动态规划矩阵
57 0
|
8月前
|
算法 测试技术 C++
【动态规划】【数学】【C++算法】805 数组的均值分割
【动态规划】【数学】【C++算法】805 数组的均值分割
|
人工智能 算法
动态规划之区间一维
噩梦中的仙境:动态规划之区间一维
83 0
动态规划之区间一维
[leetcode] 827. 最大人工岛 | 二维并查集
[leetcode] 827. 最大人工岛 | 二维并查集
82 0
Leetcode动态规划篇(0-1背包问题一维和二维dp实现)
Leetcode动态规划篇(0-1背包问题一维和二维dp实现)
|
算法 测试技术
分治法解二维的最近对问题,算法分析与代码实现,蛮力法与分治法解决二维的最近对问题的区别
分治法解二维的最近对问题,算法分析与代码实现,蛮力法与分治法解决二维的最近对问题的区别
393 0
【动态规划篇】斐波那契数列&&拆分词句&&三角矩阵
【动态规划篇】斐波那契数列&&拆分词句&&三角矩阵
【动态规划篇】斐波那契数列&&拆分词句&&三角矩阵
|
存储
三角形最小路径和(动态规划)
给定一个三角形 triangle ,找出自顶向下的最小路径和。
120 0
三角形最小路径和(动态规划)