用python画气球程序_LeetCode-python 312.戳气球
题目链接
难度: 困难 类型:分治
有 n 个气球,编号为0 到 n-1,每个气球上都标有一个数字,这些数字存在数组 nums 中。
现在要求你戳破所有的气球。每当你戳破一个气球 i 时,你可以获得 nums[left] * nums[i] * nums[right] 个硬币。 这里的 left 和 right 代表和 i 相邻的两个气球的序号。注意当你戳破了气球 i 后,气球 left 和气球 right 就变成了相邻的气球。
求所能获得硬币的最大数量
示例
输入: [3,1,5,8]
输出: 167
解释:
nums = [3,1,5,8] --> [3,5,8] --> [3,8] --> [8] --> [ ]
coins = 3*1*5 + 3*5*8 + 1*3*8 + 1*8*1 = 167
解题思路
设dp[i][j]表示错破i到j之间的气球能得到的最大硬币数量。
假设k是最后一个被戳破的气球,i
那么 dp[i][j] = max(dp[i][k]+dp[k][j] + nums[i]*nums[k]*nums[j])
代码实现
def maxCoins(iNums):
nums = [1] + [i for i in iNums if i > 0] + [1]
n = len(nums)
dp = [[0]*n for _ in range(n)]
for k in range(2, n):
for left in range(0, n - k):
right = left + k
for i in range(left + 1,right):
dp[left][right] = max(dp[left][right], nums[left] * nums[i] * nums[right] + dp[left][i] + dp[i][right])
return dp[0][n - 1]
用python画气球程序_LeetCode-python 312.戳气球相关推荐
- LeetCode·312.戳气球·动态规划
312.戳气球 题目 示例 思路 首先必须要说明,这个题目的状态转移方程真的比较巧妙,所以说如果你看了题目之后完全没有思路恰恰是正常的.虽然最优答案不容易想出来,但基本的思路分析是我们应该力求做到的. ...
- Leetcode.312 戳气球
题目链接 Leetcode.312 戳气球 题目描述 有 n个气球,编号为0到 n - 1,每个气球上都标有一个数字,这些数字存在数组 nums中. 现在要求你戳破所有的气球.戳破第 i 个气球,你可 ...
- 【LeetCode】312. 戳气球
312. 戳气球(困难) 解法一:动态规划 首先看一个区间: 区间(i,j) 是一个开区间,因为我们只能戳爆 i 和 j 之间的气球,不能戳爆索引为 i 和 j 的气球. 我们不妨考虑该区间内被戳爆的 ...
- leetcode: 312. 戳气球
312. 戳气球 来源:力扣(LeetCode) 链接: https://leetcode.cn/problems/burst-balloons/ 有 n 个气球,编号为0 到 n - 1,每个气球上 ...
- LeetCode 312.戳气球
LeetCode 312.戳气球 有 n 个气球,编号为0 到 n - 1,每个气球上都标有一个数字,这些数字存在数组 nums 中. 现在要求你戳破所有的气球.戳破第 i 个气球,你可以获得 num ...
- Java实现 LeetCode 312 戳气球
312. 戳气球 有 n 个气球,编号为0 到 n-1,每个气球上都标有一个数字,这些数字存在数组 nums 中. 现在要求你戳破所有的气球.每当你戳破一个气球 i 时,你可以获得 nums[left ...
- 用python画圆锥_用python画一幅美瞳,今日份来自程序员的浪漫
如果说,眼睛是心灵的窗户,那么,美瞳就是心灵的彩窗,就像下图中这样. 而我们今天所要挑战的,就是用python画美瞳,而且是五分钟之内画三百副争奇斗艳.各领风骚.绝不重样的美瞳.作为这颗地球上最纯情的 ...
- python画正方形程序_画正方形-小学生 Python 入门课
画正方形 还没开始学就要画正方形啊!会不会太难啊? 今天主要是教大家简化版的程序设计流程,其实和大家在日常生活中做的事情是一样的. 第一步:准备画画的工具包(纸和铅笔) 用Python代码就是导入工具 ...
- python画散点图程序-python画散点图
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 用散点图可以直观的查看数据的分布情况. matplotlib模块的pyplot有 ...
- python画同心圆程序_python turtle画4个同心圆方法!
在python中如何使用循环结构画四个相切的圆 from turtle import * r=20 x,y=0,0 for i in range(4): if i==2: penup() goto(x ...
最新文章
- 关于ceph源码 backtrace 打印函数调用栈
- 报名 | 图灵奖得主John Hopcroft做客清华,与你畅谈信息革命!
- 转载 用python 获取当前时间
- DB2数据导入导出的小结
- set dict tuple 内置方法
- python xlrd_python读取excel(xlrd)
- (43)Verilog HDL 二分频设计
- 【2020】六家云厂商价格比较:AWS、阿里云、Azure、Google Cloud、华为云、腾讯云
- 华为手机微信小程序上传不了照片
- 灭了珊瑚虫,OOXX了SOFF,下一个是谁?
- elementui+vue+springboot企业员工工资考勤请假系统
- Leap Motion 之Unity 开发实战(一. 制作手的HandController)
- Greenplum实战--检查集群状态gpstate
- 跨平台工具详解:Netbiscuits (Kony solutions的竞争对手)
- 网络安全 - 信息收集
- 华硕无畏二合一笔记本 评测
- 上海财经应用统计考python_2020考研:上海财经大学应用统计考研复习指南
- 公理化体系降维打击1之补充(脱敏版本)再加俺老孙的故事(开头)
- android卡片层叠效果_【点播软件】哈文影视 — Android+iOS端全网追剧应用!
- Intel 82801H(ICH8) HD Audio Controller 的驱动问题