博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LeetCode] Maximum Product Subarray
阅读量:5343 次
发布时间:2019-06-15

本文共 969 字,大约阅读时间需要 3 分钟。

题目描述:

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.

解题方案:

转载地址:http://blog.csdn.net/sbitswc/article/details/39546719

最大值的产生:

  1. if A[i] > 0, MaxValue = A[i] * MaxValue
  2. if A[i] < 0, MinValue = A[i] * MinValue
  3. A[i]

下面是该题代码:

1 class Solution { 2 public: 3     int maxProduct(int A[], int n) { 4         if (n == 0) {
return 0;} 5 if (n == 1) {
return A[0];} 6 7 int result = A[0]; 8 int CurMin = A[0]; 9 int CurMax = A[0];10 11 for (int i = 1; i < n; ++i) {12 int temp = CurMin * A[i];13 CurMin = min(A[i], min(temp, CurMax * A[i]));14 CurMax = max(A[i], max(temp, CurMax * A[i]));15 result = max(result, CurMax);16 }17 18 return result;19 }20 };

 

转载于:https://www.cnblogs.com/skycore/p/4036394.html

你可能感兴趣的文章
Ubuntu改坏sudoers后无法使用sudo的解决办法
查看>>
NEYC 2017 游记
查看>>
[搬运] 写给 C# 开发人员的函数式编程
查看>>
Python之旅Day14 JQuery部分
查看>>
core--线程池
查看>>
redux-effect
查看>>
Swift和OC混编
查看>>
Android轻量级的开源缓存框架ASimpleCache
查看>>
他山之石:加载图片的一个小问题
查看>>
shell - 常识
查看>>
mssql sqlserver 使用sql脚本 清空所有数据库表数据的方法分享
查看>>
分层图最短路【bzoj2763】: [JLOI2011]飞行路线
查看>>
linux下编译复数类型引发的错误:expected unqualified-id before '(' token
查看>>
codeforces 1041A Heist
查看>>
字典常用方法
查看>>
Spring Cloud Stream消费失败后的处理策略(三):使用DLQ队列(RabbitMQ)
查看>>
bzoj1048 [HAOI2007]分割矩阵
查看>>
Java中的编码
查看>>
PKUWC2018 5/6
查看>>
As-If-Serial 理解
查看>>