FastPrepFastPrep
Problem Brief

Obtain Maximum Score Using Minimum Swaps

OA

Given an array of N (even) distinct numbers, rearrange the elements to obtain the maximum score. The score is defined as the product of sums of pairs: (A1 + A2) * (A3 + A4) * ... * (A[N-1] + A[N]). You can use swap operations to rearrange the elements. In one swap, you can swap any two numbers. The goal is to obtain the maximum score using the minimum number of swaps.

Function Description

Complete the function minimumSwapsForMaximumScore in the editor.

minimumSwapsForMaximumScore has the following parameter:

  1. int[] arr: an array of integers

Returns

int: the minimum number of swaps required to obtain the maximum score

1Example 1

Input
arr = [4, 1, 2, 9, 3, 6]
Output
2
Explanation
Perform the following swaps to obtain the maximum score:
  • Swap(4, 9) to get [9, 1, 2, 4, 3, 6]
  • Swap(4, 6) to get [1, 9, 2, 6, 3, 4]
  • The score after these swaps is (1+9) * (2+6) * (3+4). Therefore, the minimum number of swaps required is 2.

    Constraints

    Limits and guarantees your solution can rely on.

    An unkown urban legendary for now
    public int minimumSwapsForMaximumScore(int[] arr) {
        // write your code here
    }
    
    Input

    arr

    [4, 1, 2, 9, 3, 6]

    Output

    2

    Sign in to submit your solution.