Maximum Subarray Min-Product
medium · verified · 40.1% accepted · 1,555 likes · top 19%
array · stack · monotonic stack · prefix sum
Description
The min-product of an array is equal to the minimum value in the array multiplied by the array's sum.
- For example, the array [3,2,5] (minimum value is 2) has a min-product of 2 * (3+2+5) = 2 * 10 = 20.
Given an array of integers nums, return the maximum min-product of any non-empty subarray of nums. Since the answer may be large, return it modulo 109 + 7.
Note that the min-product should be maximized before performing the modulo operation. Testcases are generated such that the maximum min-product without modulo will fit in a 64-bit signed integer.
A subarray is a contiguous part of an array.
Example 1:
Example 2:
Example 3:
Solution