题目
两个数对 (a, b)
和 (c, d)
之间的 乘积差 定义为 (a * b) - (c * d)
。
- 例如,
(5, 6)
和(2, 7)
之间的乘积差是(5 * 6) - (2 * 7) = 16
。
给你一个整数数组 nums
,选出四个 不同的 下标 w
、x
、y
和 z
,使数对 (nums[w], nums[x])
和 (nums[y], nums[z])
之间的 乘积差 取到 最大值 。
返回以这种方式取得的乘积差中的 最大值 。
示例1:
1 | 输入:nums = [5,6,2,7,4] |
示例2:
1 | 输入:nums = [4,2,5,9,7,4,8] |
提示:
4 <= nums.length <= 104
1 <= nums[i] <= 104
解法
解法一:
Java
1 | public int maxProductDifference(int[] nums) { |