#2170
Minimum Operations to Make the Array Alternating
expert · 1105 · lc medium +32 · verified · 35.4% accepted · 614 likes · top 13%
Description
You are given a 0-indexed array nums of n positive integers.
The array is called alternating if:
- nums[i - 2] == nums[i] for all 2 <= i <= n - 1.
- nums[i - 1] != nums[i] for all 1 <= i <= n - 1.
In one operation, choose any index i and set nums[i] to any positive integer.
Return the minimum number of operations required to make nums alternating.
Example 1:
Input: nums = [3,1,3,2,4,3]
Output: 3
Explanation:
One way to make the array alternating is by converting it to [3,1,3,1,3,1].
The number of operations required in this case is 3.
It can be proven that it is not possible to make the array alternating in less than 3 operations.
Example 2:
Input: nums = [1,2,2,2,2]
Output: 2
Explanation:
One way to make the array alternating is by converting it to [1,2,1,2,1].
The number of operations required in this case is 2.
Note that the array cannot be converted to [2,2,2,2,2] because in this case nums[0] == nums[1] which violates the conditions of an alternating array.
Code
1
2
3