2567. Minimum Score by Changing Two Elements

Difficulty:
Related Topics:
    Similar Questions:

      Problem

      You are given a 0-indexed integer array nums.

      To minimize the score of nums, we can change the value of at most two elements of nums.

      Return **the *minimum* possible score after changing the value of at most two elements o**f nums.

      Note that |x| denotes the absolute value of x.

        Example 1:

      Input: nums = [1,4,3]
      Output: 0
      Explanation: Change value of nums[1] and nums[2] to 1 so that nums becomes [1,1,1]. Now, the value of |nums[i] - nums[j]| is always equal to 0, so we return 0 + 0 = 0.
      

      Example 2:

      Input: nums = [1,4,7,8,5]
      Output: 3
      Explanation: Change nums[0] and nums[1] to be 6. Now nums becomes [6,6,7,8,5].
      Our low score is achieved when i = 0 and j = 1, in which case |nums[i] - nums[j]| = |6 - 6| = 0.
      Our high score is achieved when i = 3 and j = 4, in which case |nums[i] - nums[j]| = |8 - 5| = 3.
      The sum of our high and low score is 3, which we can prove to be minimal.
      

        Constraints:

      Solution (Java)

      class Solution {
          public int minimizeSum(int[] A) {
              int n = A.length;
              Arrays.sort(A);
              return Math.min(Math.min(A[n - 1] - A[2], A[n - 3] - A[0]), A[n - 2] - A[1]);
          }
      }
      

      Explain:

      nope.

      Complexity: