I have recived a coding question which is a variation of https://leetcode.com/discuss/interview-question/760999/how-to-solve-this-question
Integer V lies strictly between integers U and W if U < V < W or if U > V > W.
A non-empty zero-indexed array A consisting of N integers is given. A pair of indices (P, Q), where 0 ≤ P < Q < N, is said to have adjacent values if no value in the array lies strictly between values A[P] and A[Q] (A[P] != A[Q]).
For example, in array A such that: A[0] = 0, A[1] = 3, A[2] = 3, A[3] = 7, A[4] = 5, A[5] = 3, A[6] = 11, A[7] = 1
the following pairs of indices have adjacent values: (0, 7), (1, 2), (1, 4), (1, 5), (1, 7), (2, 4), (2, 5), (2, 7), (3, 4), (3, 6), (4, 5), (5, 7).
For example, indices 4 and 5 have adjacent values because there is no value in array A that lies strictly between A[4] = 5and A[5] = 3; the only such value could be the number 4,
and it is not present in the array.
Given two indices their distance is defined as abs(P-Q). Create a function that return the maximum distance between indices in an array that have adjacent values, if not return -1.
Example:
A = [1, 4, 7, 3, 3, 5] -> Answere: 4 (p = 0 and q = 4)
[0, 3, 3, 7, 5, 3, 11, 1] -> 7
[0, 0, 3, 3, 7, 5, 3, 11, 1, 1] -> 9
[0, 0, 0, 0, 7, 7, 7] -> 6