码迷,mamicode.com
首页 > 其他好文 > 详细

Maximum Product Subarray动态规划思想

时间:2014-11-02 00:29:13      阅读:276      评论:0      收藏:0      [点我收藏+]

标签:ar   sp   bs   nbsp   方法   c   ca   动态规划   数组   

该题即是昨天没有做出来的题目,想了很久,想出了一个普通的做法,提交发现超时了。思想是新建一个数组,保存每个元素与后面的元素相乘后得到的最大值,然后再在该数组中选出最大的值,返回。【笨死

发现行不通后决定还是求教度娘了。

果然大神无处不在,该题可运用动态规划思想解决。考虑到正负数相乘后会出现的各种结果,采取保存局部最小和局部最大值的方式。列出公式:

int a=localmin*A[i]

int b=localmax*A[i]

localmin = min(A[i],min(a,b))

localmax = max(A[i],max(a,b))

ans = max(ans,localmax)返回ans 即为所求。

 

需再多思考运用该方法。

 

Maximum Product Subarray动态规划思想

标签:ar   sp   bs   nbsp   方法   c   ca   动态规划   数组   

原文地址:http://www.cnblogs.com/92sunqing/p/4067999.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!