#2855

Minimum Right Shifts to Sort the Array

pupil · 400 · lc easy +24 · failed · 57.3% accepted · 243 likes · top 53%

Description

A 0-indexed array nums of length n with distinct positive integers is given. A right shift moves each element at index i to index (i + 1) % n.

Return the minimum number of right shifts needed to sort nums, or -1 if sorting is impossible.

Example 1:

Input: nums = [3,4,5,1,2]
Output: 2
Explanation:
After the first right shift, nums = [2,3,4,5,1].
After the second right shift, nums = [1,2,3,4,5].
Now nums is sorted; therefore the answer is 2.

Example 2:

Input: nums = [1,3,5]
Output: 0
Explanation: nums is already sorted therefore, the answer is 0.

Example 3:

Input: nums = [2,1,4]
Output: -1
Explanation: It's impossible to sort the array using right shifts.

Code

1
2
3