[leetcode]Maximum Product Subarray
来源:互联网 发布:淘宝销售额排行榜 编辑:程序博客网 时间:2024/06/06 04:58
Find the contiguous subarray within an array (containing at least one number) which has the largest product.
For example, given the array [2,3,-2,4],
the contiguous subarray [2,3] has the largest product = 6.
这一题一开始不知道dp公式怎么写。试一试暴力,结果果然不行。
TLE代码如下
class Solution {public: int maxProduct(vector<int>& nums) { if(nums.size()==0) return 0; int m = nums.size(); int res = 1; for(int i=0;i<m;i++){ int tmp = 1; for(int j=i;j<m;j++){ tmp *= nums[j]; if(tmp>res) res=tmp; } } return res; }};
正确的情况要记录下当前的最大值以及最小值,才能得出最后的值。
class Solution {public: vector<int> ans; int maxProduct(vector<int>& nums) { if(nums.size()==0) return 0; int m = nums.size(); int res = 1; int locmin = nums[0],locmax = nums[0],global =nums[0]; for(int i=1;i<m;i++){ int tmp = locmax; locmax=max(max(nums[i]*locmax,nums[i]),nums[i]*locmin); locmin=min(min(nums[i]*tmp,nums[i]),nums[i]*locmin); global=max(global,locmax); } return global; }};
0 0
- Maximum Product Subarray 【LeetCode】
- [LeetCode] Maximum Product Subarray
- leetcode-Maximum Product Subarray
- Maximum Product Subarray -- LeetCode
- LeetCode-Maximum Product Subarray
- [LeetCode]Maximum Product Subarray
- [LeetCode]Maximum Product Subarray
- 【LeetCode】Maximum Product Subarray
- leetcode:Maximum Product Subarray
- leetcode: Maximum Product Subarray
- Leetcode: Maximum Product Subarray
- [LeetCode]Maximum Product Subarray
- Leetcode Maximum Product Subarray
- [Leetcode]Maximum Product Subarray
- Leetcode--Maximum Product Subarray
- Maximum Product Subarray [leetcode]
- LeetCode | Maximum Product Subarray
- LeetCode-Maximum Product Subarray
- [Rx86OS-XIV] 提高分辨率
- 前辍表达式,中辍表达式,后辍表达式详解
- ACM-二分-POJ-2785-4 Values whose Sum is 0
- TDA7419调试记录(2)——2015/04/17
- PID教程
- [leetcode]Maximum Product Subarray
- Hadoop常见错误解决
- vi常用命令
- 利用 js 给 WebView add 添加 padding
- 黑马程序员 for循环的条件的解释
- ORACLE—010:调用有游标参数的存储过程
- 黑马程序员——OC语言——分类和类的本质
- mx4 如何连接eclipse?
- ionic的样式布局简单入门