Minimum Distance Between Three Equal Elements II
You are given an integer array nums.
A tuple (i, j, k) of 3 distinct indices is good if nums[i] == nums[j] == nums[k].
The distance of a good tuple is abs(i - j) + abs(j - k) + abs(k - i), where abs(x) denotes the absolute value of x.
Return an integer denoting the minimum possible distance of a good tuple. If no good tuples exist, return -1.
Example 1
Input
nums = [1,2,1,1,3]Output
6The minimum distance is achieved by the good tuple
(0, 2, 3), whose distance is abs(0 - 2) + abs(2 - 3) + abs(3 - 0) = 6.Example 2
Input
nums = [1,1,2,3,2,1,2]Output
8The minimum distance is achieved by the good tuple
(2, 4, 6), whose distance is abs(2 - 4) + abs(4 - 6) + abs(6 - 2) = 8.Constraints
- 1 <= n == nums.length <= 10^5
- 1 <= nums[i] <= n