> For the complete documentation index, see [llms.txt](https://code-snippets.hbamithkumara.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://code-snippets.hbamithkumara.com/leetcode/problems/1401-1500/maximum-product-of-two-elements-in-an-array.md).

# 1464. Maximum Product of Two Elements in an Array

### Description

Given the array of integers `nums`, you will choose two different indices `i` and `j` of that array. *Return the maximum value of* `(nums[i]-1)*(nums[j]-1)`.

### Constraints

* `2 <= nums.length <= 500`
* `1 <= nums[i] <= 10^3`

### Approach

### Links

* [Binarysearch](https://binarysearch.com/problems/Max-Product-of-Two-Numbers)
* GeeksforGeeks
* [Leetcode](https://leetcode.com/problems/maximum-product-of-two-elements-in-an-array/)
* ProgramCreek
* YouTube

### **Examples**

{% tabs %}
{% tab title="Example 1" %}
**Input:** nums = \[3, 4, 5, 2]

**Output:** 12

**Explanation:** If you choose the indices i=1 and j=2 (indexed from 0), you will get the maximum value, that is, (nums\[1]-1)*(nums\[2]-1) = (4-1)*(5-1) = 3\*4 = 12.
{% endtab %}

{% tab title="Example 2" %}
**Input:** nums = \[1, 5, 4, 5]

**Output:** 16

**Explanation:** Choosing the indices i=1 and j=3 (indexed from 0), you will get the maximum value of (5-1)\*(5-1) = 16.
{% endtab %}

{% tab title="Example 3" %}
**Input:** nums = \[3, 7]

**Output:** 12
{% endtab %}
{% endtabs %}

### **Solutions**

{% tabs %}
{% tab title="Solution 1" %}

```java
/**
 * Time complexity : 
 * Space complexity : 
 */

class Solution {
    public int maxProduct(int[] nums) {
        if(nums == null || nums.length < 2) {
            return 0;
        }
        int max1 = 0, max2 = 0;
        for(int num: nums) {
            if(num > max1) {
                max2 = max1;
                max1 = num;
            } else if(num > max2) {
                max2 = num;
            }
        }
        return (max1-1)*(max2-1);
    }
}
```

{% endtab %}
{% endtabs %}

### **Follow up**

*
