给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], …, A[N-1]。

假设您将多边形剖分为 N-2 个三角形。对于每个三角形,该三角形的值是顶点标记的乘积,三角剖分的分数是进行三角剖分后所有 N-2 个三角形的值之和。

返回多边形进行三角剖分后可以得到的最低分。

示例 1:

输入:[1,2,3]
输出:6
解释:多边形已经三角化,唯一三角形的分数为 6。

图解状态转移

dp[i][j]代表区间(i,j)内多边形进行三角剖分后可以得到的最低分

代码

class Solution {public int minScoreTriangulation(int[] A) {int n=A.length;int[][] dp=new int[n][n];for(int i=0;i<n;i++)Arrays.fill(dp[i],Integer.MAX_VALUE);for(int i=0;i<n;i++)dp[i][(i+1)%n]=0;for(int len=2;len<n;len++)for (int left=0;left<n;left++){int right=(left+len)%n;for(int loc=(left+1)%n;loc!=right;loc=(loc+1)%n)dp[left][right]= Math.min(dp[left][right],dp[left][loc]+dp[loc][right]+A[loc]*A[left]*A[right]);}return dp[0][n-1];}
}

leetcode1039. 多边形三角剖分的最低得分(动态规划)相关推荐

  1. C++ 实现 力扣1039. 多边形三角剖分的最低得分

    力扣1039. 多边形三角剖分的最低得分 动态规划问题 建立动态规划方程的过程: opt( l, r ) 表示从顶点i到j的最优(最低)分数 ij距离为1时分数是0(这里一直没搞清楚所以方程一直建不起 ...

  2. 5047. 多边形三角剖分的最低得分

    5047. 多边形三角剖分的最低得分 转载请注明出处 附上我的博客链接 四元君 题目难度 Medium 题目描述 给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i] ...

  3. 【经典算法题】多边形三角剖分的最低得分

    [经典算法题]多边形三角剖分的最低得分 Leetcode 1039 多边形三角剖分的最低得分 题目描述:Leetcode 1039 多边形三角剖分的最低得分 分析 本题的考点:动态规划. 分析如下: ...

  4. 【1039】多边形三角剖分的最低得分

    给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], -, A[N-1].假设您将多边形剖分为N-2 个三角形.对于每个三角形,该三角形的值是顶点标记的乘积,三角剖 ...

  5. LeetCode 1039. 多边形三角剖分的最低得分(区间DP)

    文章目录 1. 题目 2. 解题 1. 题目 给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], ..., A[N-1]. 假设您将多边形剖分为 N-2 个三角形 ...

  6. leetcode - 1039. 多边形三角剖分的最低得分

    给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], -, A[N-1]. 假设您将多边形剖分为 N-2 个三角形.对于每个三角形,该三角形的值是顶点标记的乘积,三 ...

  7. 【Leetcode 1039】多边形三角剖分的最低得分

    问题描述 给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], ..., A[N-1].假设您将多边形剖分为 N-2 个三角形.对于每个三角形,该三角形的值是顶点标 ...

  8. leetcode算法题--多边形三角剖分的最低得分★

    原题链接:https://leetcode-cn.com/problems/minimum-score-triangulation-of-polygon/ 和矩阵连乘问题相似 动态规划: dp[i][ ...

  9. leetcode-多边形三角剖分的最低得分

    给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], -, A[N-1]. 假设您将多边形剖分为 N-2 个三角形.对于每个三角形,该三角形的值是顶点标记的乘积,三 ...

最新文章

  1. 盘点|应用落地,构建城市“大脑”
  2. 用于数据库测试的DBUnit,Spring和注释
  3. 前端性能优化(一)-- 文件的压缩与合并
  4. 能赚钱的人,先找买家,再做产品
  5. Linux pip 安装模块时,一直黄字错误:Could not find a version that satisfies the requirement...
  6. Flume的开发之 自定义 source 自定义 sink 自定义拦截器
  7. python快速开发 数据管理网站_GitHub - AngelLiang/kingWeb: Python django后台快速开发框架...
  8. netperf mips 移植
  9. php木马在线查杀_网站木马监控查杀扫描 ASP木马 PHP木马上传拦截
  10. 体验更简单的 DM —— v1.0.2
  11. 桶装水同城预订下单送水小程序开发制作(水站桶装水配送系统)
  12. 百度网盘如何免费上传大于4GB的文件(制作BT文件)
  13. poi 大量数据写入
  14. 今年天猫双11的这些技术,可能会改变整个零售行业
  15. insmod: error inserting './scull.ko': -1 Unknown symbol in module
  16. python-docx 合并单元格
  17. 编译原理学习 一 什么是编译程序
  18. 求解关系模式R的候选码
  19. 域名状态REGISTRAR-HOLD的含义 及其它状态解析
  20. JS实现页面HTML内容以另存为的文件形式下载保存

热门文章

  1. 【Computer Organization】The Core Design Thinking of single cycle CPU
  2. 【1】MySQL的四种事务隔离级别
  3. static、const用法
  4. Leetcode 31. Pow(x, n) 解题报告
  5. Java字节码指令简介
  6. WinPcap笔记(2):获取设备列表
  7. Java设计模式汇总
  8. nginx编译安装时添加echo模块
  9. 张宏江:工程水平决定创新能力(转载于百度百科)
  10. 赋值语句 变量的地址相关 : RUNOOB python练习题7