714131. Maximum Possible Value

Medium

Maximum Possible Value

Slug: maximum-possible-value--170647 Difficulty: Medium Id: 714131 Topic Tags: Mathematical, Algorithms Company Tags: Sprinklr

Summary

Given an array of integers, find the maximum possible value that can be obtained by multiplying all elements in the array. The problem is related to mathematical optimization and involves finding the maximum product among all possible products.

Detailed Explanation

To solve this problem, we will use a simple approach based on sorting the array and then taking the product of the two largest numbers (since one negative number multiplied by another negative number results in a positive product). Here's a step-by-step breakdown:

  1. Sort the given array in descending order.
  2. If the length of the array is even, the maximum possible value will be the product of the first and second elements from the sorted array.
  3. If the length of the array is odd, the maximum possible value will be the product of the middle element (since it's already multiplied by itself) and the two largest numbers.

Here's a diagram to illustrate this approach:

[5, 2, -7, 1, -4]
Sort: [5, 2, 1, -4, -7]
Product: |5| × |2| = 10 (since it's even-length array)

Time complexity: O(n log n) due to the sorting operation. Space complexity: O(1), as we only use a constant amount of space.

Optimized Solutions

Java

View on GeeksforGeeks
public class Main {
    public static int maximumPossibleValue(int[] arr) {
        Arrays.sort(arr);
        if (arr.length % 2 == 0) {
            return arr[0] * arr[1];
        } else {
            return arr[arr.length / 2 - 1] * arr[0] * arr[1];
        }
    }

    public static void main(String[] args) {
        int[] arr = {5, 2, -7, 1, -4};
        System.out.println(maximumPossibleValue(arr));
    }
}

DevExCode

Master coding interviews with Leetcode, system design, TechBit, QuickLearn, DevTips, Tech Battles, and career services.

© 2026 DevExCode. All rights reserved.