题解 | #数组中子数组的最大累乘积#

数组中子数组的最大累乘积

http://www.nowcoder.com/practice/f46135ecf26a45b3b964239ebc745aac

n = int(input())
nums = list(map(float, input().split()))
bef_min = nums[0]
bef_max = nums[0]
res = nums[0]
for i in range(1, len(nums)):
    bef_new_max = max(bef_min * nums[i], bef_max * nums[i], nums[i])
    bef_new_min = min(bef_min * nums[i], bef_max * nums[i], nums[i])
    res = max(res, bef_new_max)
    bef_min = bef_new_min
    bef_max = bef_new_max
print("%.2f" % res)
全部评论

相关推荐

03-29 14:19
门头沟学院 Java
你背过凌晨4点的八股文么:加油同学,人生的容错率很高,只是一个暑期罢了,后面还有很多机会!
点赞 评论 收藏
分享
03-05 12:52
吉林大学 Java
挣K存W养DOG:他的价值在于把他家里积攒的财富回馈给社会
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务