LeetCode "Maximum Product Subarray"
2014-10-11 07:41
393 查看
Intuitively there must a O(n) solution.
First I tried a bottom-up DP solution but it had a TLE:
So what is O(n) solution then? The idea is to keep track of 2 lines: one for positive and one for negative. Inspired by:
https://oj.leetcode.com/discuss/11923/sharing-my-solution-o-1-space-o-n-running-time
First I tried a bottom-up DP solution but it had a TLE:
class Solution { public: int maxProduct(int A[], int n) { vector<int> dp;dp.resize(n); dp.assign(A, A + n); int max = *std::max_element(A, A + n); for (size_t len = 2; len <= n; len ++) for (int i = 0; i <= n - len; i ++) { dp[i] *= A[i + len - 1]; max = std::max(max, dp[i]); } return max; } };
So what is O(n) solution then? The idea is to keep track of 2 lines: one for positive and one for negative. Inspired by:
https://oj.leetcode.com/discuss/11923/sharing-my-solution-o-1-space-o-n-running-time
相关文章推荐
- Leetcode-"Maximum product subarray"
- leetcode maximum-product-subarray
- LeetCode(152) Maximum Product Subarray
- leetcode Maximum Product Subarray(*)
- [LeetCode] Maximum Product Subarray 连续数列最大积
- LeetCode OJ Maximum Product Subarray
- Leetcode 152-MaximumProductSubarray 解题报告
- LeetCode 解题报告 Maximum Product Subarray
- LeetCode Maximum Product Subarray 最大子序列积
- [Leetcode 152, Medium] Maximum Product Subarray
- leetcode[152]Maximum Product Subarray
- leetcode:Maximum Product Subarray
- leetcode做题总结,动态规划II(Maximum Subarray, Maximum Product Subarray)
- LeetCode-Maximum Product Subarray
- leetcode-Maximum Product Subarray-ZZ
- 【LeetCode】Maximum Product Subarray
- Leetcode Maximum Product Subarray
- Maximum Product Subarray (leetcode)
- LeetCode Maximum Product Subarray
- [LeetCode]Maximum Product Subarray