The problem statement says the left and the right pointers to be
1≤ left ≤≤ right ≤≤ n
That said, we dont really need to create a second pointer to iterate over to find the nth right element. Instead we can simply run over to reverse the list by K from the position found on the left site. Once reversed, the nth right element would be the one returned by the curr pointer.
Course: Grokking Coding Interview Patterns in Go - Learn Interactively
Lesson: Solution: Reverse Linked List II