lintcode: Maximum Product Subarray
来源:互联网 发布:godaddy设置php 编辑:程序博客网 时间:2024/06/06 17:07
Find the contiguous subarray within an array (containing at least one number) which has the largest product.
跟lintcode: Maximum Subarray 类似。
但乘法和加法不同,乘法不是线性递增的,可能有一个数是负数很小,乘以一个整数后就变得很大了。
做法是在维持一个局部最大数组的同时,维持一个局部最小的数组。
参考:http://blog.csdn.net/linhuanmars/article/details/39537283
class Solution {public: /** * @param nums: a vector of integers * @return: an integer */ int maxProduct(vector<int>& nums) { // write your code here int localMax=nums[0]; int localMin=nums[0]; int globalMax=nums[0]; for(int i=1;i<nums.size();i++){ int tmp=localMax; localMax=max(max(localMax*nums[i],nums[i]),localMin*nums[i]); localMin=min(min(localMin*nums[i],nums[i]),tmp*nums[i]); if(localMax>globalMax){ globalMax=localMax; } } return globalMax; }};
0 0
- lintcode: Maximum Product Subarray
- Maximum Product Subarray--lintcode
- [Lintcode]Maximum Product Subarray乘积最大子序列
- LeetCode_Maximum Subarray | Maximum Product Subarray
- Maximum Product Subarray
- Maximum Product Subarray
- 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
- Maximum Product Subarray
- java保留两位小数
- 关于% 探究
- java线程安全和锁优化
- 面向对象小结
- 并查集
- lintcode: Maximum Product Subarray
- 在eclipse中引入java程序的方法
- python:mysql查询
- 20160410模拟
- 程序员三年一跳,为什么越跳越好?
- Android_View和viewgroup测绘顺序
- hdu 1878 欧拉回路 解题报告
- 九度OJ练习笔记
- 如何降低自己的gcc版本_caffe_matlabconfigure