312 Burst Balloons
来源:互联网 发布:淘宝流量和访客的区别 编辑:程序博客网 时间:2024/04/30 07:35
动态规划:dp[i][j]表示气球i到气球j的最佳coins
动态转移方程:
dp[i][j]=max(dp[i][k-1]+nums[i-1]*nums[k]*nums[j+1]+dp[k+1][j]) k∈[i,j]
class Solution {public: int maxCoins(vector<int>& nums) { for(int i=0;i<nums.size();++i){ if(nums[i]==0){ nums.erase(nums.begin()+i); --i; } } int n=nums.size(); if(n==0) return 0; //if(n==1) return nums[0]; //if(n==2) return nums[0]*nums[1]+max(nums[0],nums[1]); nums.insert(nums.begin(),1); nums.insert(nums.end(),1); int m=nums.size(); vector<vector<int>> dp(m,vector<int>(m,0)); for(int count=1;count<=n;++count){ for(int start=1;start+count-1<=n;++start){ int bestcoins=0; for(int b=0;b<count;++b){ bestcoins=max(bestcoins,dp[start][start+b-1]+nums[start-1]*nums[start+b]*nums[start+count]+dp[start+b+1][start+count-1]); } dp[start][start+count-1]=bestcoins; } } return dp[1][n]; }};
0 0
- 312 Burst Balloons
- leetcode 312 Burst Balloons
- leetcode 312 : Burst Balloons
- 【LEETCODE】312-Burst Balloons
- LeetCode #312: Burst Balloons
- Leetcode (312) Burst Balloons
- LeetCode 312 - Burst Balloons
- Leetcode #312 Burst Balloons
- Leetcode 312: Burst Balloons
- 312 Burst Balloons
- LeetCode #312 - Burst Balloons - Hard
- LeetCode 312 Burst Balloons 题解
- Burst Balloons
- Burst Balloons
- Burst Balloons
- Burst Balloons
- Burst Balloons
- Burst Balloons
- 算法的定义
- 数据库分库分表(sharding)系列(二) 全局主键生成策略
- Java并发编程系列之三:重排序与顺序一致性
- 什么是web框架
- 决定配置完整的python ubuntu14.04 python-dev distribute
- 312 Burst Balloons
- spring初始化
- 计算机经典书籍汇总
- Android中Shape的使用范例
- 怎么让Android 浏览器焦点在文本输入框时不自动放大页面?
- 常用的开发工具
- Big-endian
- [leetcode] 279. Perfect Squares
- C++88个注意点子之41~50