您的位置:首页 > 其它

LeetCode Brust Ballons

2016-04-15 09:24 183 查看
#include <iostream>
#include <vector>
using namespace std;
using namespace std;
class solution{
public:
int maxCoins(vector<int>& nums){
int array[nums.size()+2];
for(int i=1;i<nums.size()+1;i++){
array[i]=nums[i-1];
}
array[0]=array[nums.size()+1]=1;
int n=nums.size()+2;
vector<vector<int>> dp(n,vector<int>(n,0));
//int dp

;
for(int k=2;k<n;k++){
for(int l=0;l<n-k;l++){
int r=l+k;
for(int i=l+1;i<r;i++)
dp[l][r]=max(dp[l][r],dp[l][i]+dp[i][r]+array[i]*array[l]*array[r]);
}
}
return dp[0][n-1];
}

};

int main(void){
//cin>>i;
vector<int> nums;
int nu=0;

while(cin>>nu){
nums.push_back(nu);
}

//for(int i=0;i<10;i++) nums.push_back(i);
solution maxcoin;
cout<<maxcoin.maxCoins(nums);
//for(int i=0;i<nums.size();i++) cout<<nums[i]<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: