Simple, single for-loop 
Code


# Code
```csharp []
public class Solution {
    public int MinimumRightShifts(IList<int> nums) {
        
        int count = 0;
        bool pivot = false;
        for (int i = 0; i < nums.Count - 1; i++) {
            if (nums[i + 1] >= nums[i] && !pivot) continue;
            else if (nums[i + 1] < nums[i] && !pivot) { count += 1; pivot = true; }
            else if (nums[i + 1] >= nums[i] && pivot) { count += 1; continue; }
            else return -1;
        }
        return pivot && nums[0] < nums[nums.Count - 1] ? -1 : count;
    }
}
```
['C#']