Задача
Дан целочисленный массив nums. Найдите три числа, произведение которых максимально, и верните это максимальное произведение.
Примеры
Пример 1
Input: nums = [1,2,3]
Output: 6
Пример 2
Input: nums = [1,2,3,4]
Output: 24
Пример 3
Input: nums = [-1,-2,-3]
Output: -6
Решение
Решение
var maximumProduct = function(nums) { if (nums.length === 3) { return nums[0] * nums[1] * nums[2]; } let max1 = -Infinity, max2 = -Infinity, max3 = -Infinity; let min1 = Infinity, min2 = Infinity; for (let i = 0; i < nums.length; i++) { const num = nums[i]; if (num > max1) { max3 = max2; max2 = max1; max1 = num; } else if (num > max2) { max3 = max2; max2 = num; } else if (num > max3) { max3 = num; } if (num < min1) { min2 = min1; min1 = num; } else if (num < min2) { min2 = num; } } return Math.max(max1 * max2 * max3, min1 * min2 * max1); };