Class Solution
- java.lang.Object
-
- g1601_1700.s1674_minimum_moves_to_make_array_complementary.Solution
-
public class Solution extends Object
1674 - Minimum Moves to Make Array Complementary.Medium
You are given an integer array
numsof even lengthnand an integerlimit. In one move, you can replace any integer fromnumswith another integer between1andlimit, inclusive.The array
numsis complementary if for all indicesi( 0-indexed ),nums[i] + nums[n - 1 - i]equals the same number. For example, the array[1,2,3,4]is complementary because for all indicesi,nums[i] + nums[n - 1 - i] = 5.Return the minimum number of moves required to make
numscomplementary.Example 1:
Input: nums = [1,2,4,3], limit = 4
Output: 1
Explanation: In 1 move, you can change nums to [1,2,2,3] (underlined elements are changed).
nums[0] + nums[3] = 1 + 3 = 4.
nums[1] + nums[2] = 2 + 2 = 4.
nums[2] + nums[1] = 2 + 2 = 4.
nums[3] + nums[0] = 3 + 1 = 4.
Therefore, nums[i] + nums[n-1-i] = 4 for every i, so nums is complementary.
Example 2:
Input: nums = [1,2,2,1], limit = 2
Output: 2
Explanation: In 2 moves, you can change nums to [2,2,2,2]. You cannot change any number to 3 since 3 > limit.
Example 3:
Input: nums = [1,2,1,2], limit = 2
Output: 0
Explanation: nums is already complementary.
Constraints:
n == nums.length2 <= n <= 1051 <= nums[i] <= limit <= 105nis even.
-
-
Constructor Summary
Constructors Constructor Description Solution()
-