LeetCode刷题笔记:1464.数组中两元素的最大乘积

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;
    }
}

猜你喜欢

转载自blog.csdn.net/hutianle/article/details/126538241