Q2. Closest Equal Element Queries
⭐Important learnings wrt 🔁Circular Array🔁 :
The two distances between elt at i & j :
- forward_dist = (j-i+n) % n;
- backward_dist = (i-j+n) % n;
How to get the two indexes `d` distance away from a given index, i ?
- next_d_idx = ( i + d) % n ;
- prev_d_idx = ( i - d + n) % n ;
As a special case when d=1, we can get next & prev elements as :
- next_idx = (i+1) % n
- prev_idx = (i-1+n ) % n
Alternatively, the +1 for forward should be thought as +(n-1) for backward or more generally, +d should be thought as +(n-d) when marching in backward direction.