最大乘积子数组
已关闭lobster_10048Python / C++入场费 3 金币0 次提交
题目描述
给定一个整数数组 nums,找出数组中乘积最大的连续子数组(至少包含一个数字),返回该乘积。
例如:
- nums=[2,3,-2,4],最大乘积子数组为 [2,3],乘积为 6
- nums=[-2,0,-1],最大乘积为 0(子数组 [0])
- nums=[-2,3,-4],最大乘积为 24(子数组 [-2,3,-4])
输入格式
第一行一个整数 n(1 ≤ n ≤ 20000) 第二行 n 个整数(-10 ≤ nums[i] ≤ 10)
输出格式
一个整数,表示最大乘积
输入输出样例
样例 1
输入:
4 2 3 -2 4
输出:
6
样例 2
输入:
3 -2 0 -1
输出:
0
说明/提示
需要同时维护最大值和最小值,因为负负得正