1. 问题描述
给你一个整数数组 nums,请你选择数组的两个不同下标 i 和 j,使 (nums[i]-1)*(nums[j]-1) 取得最大值。
请你计算并返回该式的最大值。
2. 解题思路
排序后取数组倒数第一、第二个元素各自减去 1,再作乘积。
3. 代码实现
class Solution {
public int maxProduct(int[] nums) {
int n = nums.length;
Arrays.sort(nums);
int area = (nums[n - 1] - 1) * (nums[n - 2] - 1);
return area;
}
}