leetcode1039. 多边形三角剖分的最低得分(动态规划)
给定 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. 多边形三角剖分的最低得分(动态规划)相关推荐
- C++ 实现 力扣1039. 多边形三角剖分的最低得分
力扣1039. 多边形三角剖分的最低得分 动态规划问题 建立动态规划方程的过程: opt( l, r ) 表示从顶点i到j的最优(最低)分数 ij距离为1时分数是0(这里一直没搞清楚所以方程一直建不起 ...
- 5047. 多边形三角剖分的最低得分
5047. 多边形三角剖分的最低得分 转载请注明出处 附上我的博客链接 四元君 题目难度 Medium 题目描述 给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i] ...
- 【经典算法题】多边形三角剖分的最低得分
[经典算法题]多边形三角剖分的最低得分 Leetcode 1039 多边形三角剖分的最低得分 题目描述:Leetcode 1039 多边形三角剖分的最低得分 分析 本题的考点:动态规划. 分析如下: ...
- 【1039】多边形三角剖分的最低得分
给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], -, A[N-1].假设您将多边形剖分为N-2 个三角形.对于每个三角形,该三角形的值是顶点标记的乘积,三角剖 ...
- LeetCode 1039. 多边形三角剖分的最低得分(区间DP)
文章目录 1. 题目 2. 解题 1. 题目 给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], ..., A[N-1]. 假设您将多边形剖分为 N-2 个三角形 ...
- leetcode - 1039. 多边形三角剖分的最低得分
给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], -, A[N-1]. 假设您将多边形剖分为 N-2 个三角形.对于每个三角形,该三角形的值是顶点标记的乘积,三 ...
- 【Leetcode 1039】多边形三角剖分的最低得分
问题描述 给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], ..., A[N-1].假设您将多边形剖分为 N-2 个三角形.对于每个三角形,该三角形的值是顶点标 ...
- leetcode算法题--多边形三角剖分的最低得分★
原题链接:https://leetcode-cn.com/problems/minimum-score-triangulation-of-polygon/ 和矩阵连乘问题相似 动态规划: dp[i][ ...
- leetcode-多边形三角剖分的最低得分
给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], -, A[N-1]. 假设您将多边形剖分为 N-2 个三角形.对于每个三角形,该三角形的值是顶点标记的乘积,三 ...
最新文章
- 盘点|应用落地,构建城市“大脑”
- 用于数据库测试的DBUnit,Spring和注释
- 前端性能优化(一)-- 文件的压缩与合并
- 能赚钱的人,先找买家,再做产品
- Linux pip 安装模块时,一直黄字错误:Could not find a version that satisfies the requirement...
- Flume的开发之 自定义 source 自定义 sink 自定义拦截器
- python快速开发 数据管理网站_GitHub - AngelLiang/kingWeb: Python django后台快速开发框架...
- netperf mips 移植
- php木马在线查杀_网站木马监控查杀扫描 ASP木马 PHP木马上传拦截
- 体验更简单的 DM —— v1.0.2
- 桶装水同城预订下单送水小程序开发制作(水站桶装水配送系统)
- 百度网盘如何免费上传大于4GB的文件(制作BT文件)
- poi 大量数据写入
- 今年天猫双11的这些技术,可能会改变整个零售行业
- insmod: error inserting './scull.ko': -1 Unknown symbol in module
- python-docx 合并单元格
- 编译原理学习 一 什么是编译程序
- 求解关系模式R的候选码
- 域名状态REGISTRAR-HOLD的含义 及其它状态解析
- JS实现页面HTML内容以另存为的文件形式下载保存