leetCode_Maximum Product Subarray
来源:互联网 发布:编程算法 编辑:程序博客网 时间:2024/06/07 10:03
题意:给定一列数,找出乘积最大的子数组
解法:这道题非!常!山!寨!思路很简单,用temp记录当前乘到哪儿了。如果temp为正数,则更新(由于数组都是整数所以肯定越乘越大),若temp为负数则保存当前值与第一个负数的temp相除的值。要注意若某个元素为0时,需要将temp初始化。上代码。maxVal表示第一个出现的temp为负数的值。
int maxProduct(vector<int>& nums){ int temp=1,i,j,k,maxVal=INT_MAX,size=nums.size(),res=nums[0]; for(i=0; i<size; i++) { if(nums[i]==0) { res=max(res,0); temp=1; maxVal=INT_MAX; continue; } temp=temp*nums[i]; if(temp>0)res=max(res,temp); else { if(maxVal==INT_MAX) { maxVal=temp; res=max(res,temp); } else res=max(res,temp/maxVal); } } return res;}
0 0
- leetcode_Maximum Product Subarray
- leetcode_Maximum Product Subarray
- leetcode_Maximum Product Subarray
- leetCode_Maximum Product Subarray
- LeetCode_Maximum Subarray | Maximum Product Subarray
- Leetcode_Maximum Product Subarray(c++ version)
- Leetcode_maximum-subarray
- Leetcode_Maximum Subarray
- leetcode_Maximum Product Subarray _medium(最大子数组之积)
- leetcode_Maximum Subarray _medium(最大子数组的和)
- 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
- 如何培养研发团队的凝聚力
- 学习android 笔记(4):如何获取屏幕的相关属性以及dp 、dip、dpi 、px的概念
- java中的枚举
- C++第7次实验-项目1:素数和回文
- 关于输出菱形
- leetCode_Maximum Product Subarray
- SQL 2008 视频总结(一)
- bzoj2124 等差子序列
- web前端性能测试在线工具
- 1605 - Building for UN
- 从一个实例中学习DTW算法
- 结婚后谁管钱更高效?怎样越管越多?
- matlab下libjpeg工具箱(jpegtbx1.4)的安装与配置,包括IJG库的编译配置(综合整理网上资料)
- 【Android 基础】android导入工程出现红色感叹号