当前位置:网站首页>LeetCode 312. Poke balloon daily
LeetCode 312. Poke balloon daily
2022-07-07 16:59:00 【@Little safflower】
Problem description
Yes n A balloon , The number is 0 To n - 1, Each balloon is marked with a number , There are arrays of these numbers nums in .
Now I ask you to prick all the balloons . Pierce the second i A balloon , You can get nums[i - 1] * nums[i] * nums[i + 1] Coin . there i - 1 and i + 1 For and on behalf of i The serial number of the two adjacent balloons . If i - 1 or i + 1 Beyond the bounds of the array , Then think of it as a number for 1 The balloon .
Find the maximum number of coins you can get .
Example 1:
Input :nums = [3,1,5,8]
Output :167
explain :
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
Example 2:Input :nums = [1,5]
Output :10
Tips :
n == nums.length
1 <= n <= 300
0 <= nums[i] <= 100source : Power button (LeetCode)
link :https://leetcode.cn/problems/burst-balloons
Copyright belongs to the network . For commercial reprint, please contact the official authority , Non-commercial reprint please indicate the source .
Java
class Solution {
public int maxCoins(int[] nums) {
int n = nums.length;
int[] arr = new int[n + 2];
arr[0] = arr[n + 1] = 1;
for(int i = 0;i < n;i++) arr[i + 1] = nums[i];
int[][] dp = new int[n + 2][n + 2];
for(int i = n - 1;i >= 0;i--){
for(int j = i + 2;j <= n + 1;j++){
// First find two boundaries i and j, Then poke the balloon between them , Open range
for(int k = i + 1;k < j;k++){
// Number i To number j The maximum score is : Number i To number k Score of + Number k To number j Score of + The stamp number is k Score of
dp[i][j] = Math.max(
dp[i][j],
dp[i][k] + dp[k][j] + arr[i] * arr[k] * arr[j]
);
}
}
}
// The number is 1 To No n The balloon with the highest score
return dp[0][n + 1];
}
}
边栏推荐
- ByteDance Android gold, silver and four analysis, Android interview question app
- 记录Servlet学习时的一次乱码
- dapp丨defi丨nft丨lp单双币流动性挖矿系统开发详细说明及源码
- 字节跳动Android面试,知识点总结+面试题解析
- Three. JS series (3): porting shaders in shadertoy
- LeetCode 1043. 分隔数组以得到最大和 每日一题
- 模拟Servlet的本质
- QML初学
- 《产品经理必读:五种经典的创新思维模型》的读后感
- The team of East China Normal University proposed the systematic molecular implementation of convolutional neural network with DNA regulation circuit
猜你喜欢
Personal notes of graphics (1)
skimage学习(2)——RGB转灰度、RGB 转 HSV、直方图匹配
Horizontal and vertical centering method and compatibility
Seaborn数据可视化
字节跳动Android面试,知识点总结+面试题解析
Have fun | latest progress of "spacecraft program" activities
ByteDance Android gold, silver and four analysis, Android interview question app
Introduction and use of gateway
Binary search tree (features)
[designmode] proxy pattern
随机推荐
面试题 01.02. 判定是否互为字符重排-辅助数组算法
如何快速检查钢网开口面积比是否符合 IPC7525
23. 合并K个升序链表-c语言
ATM系统
面向接口编程
1亿单身男女“在线相亲”,撑起130亿IPO
Localstorage and sessionstorage
Arduino 控制的双足机器人
爬虫(17) - 面试(2) | 爬虫面试题库
Skimage learning (3) -- gamma and log contrast adjustment, histogram equalization, coloring gray images
SqlServer2014+: 创建表的同时创建索引
作为Android开发程序员,android高级面试
time标准库
QT 图片背景色像素处理法
[medical segmentation] attention Unet
Process from creation to encapsulation of custom controls in QT to toolbar (I): creation of custom controls
两类更新丢失及解决办法
在哪个期货公司开期货户最安全?
LeetCode 403. 青蛙过河 每日一题
Cesium (4): the reason why gltf model is very dark after loading