leetcodeSolution to some Leetcode problems written in C++ |
git clone git://git.dimitrijedobrota.com/leetcode.git |
Log | Files | Refs | README | LICENSE |
1574.cpp (564B)
0 class Solution { 1 public: 2 int findLengthOfShortestSubarray(const vector<int> &arr) const { 3 const int n = size(arr); 4 int i = 0, j = n - 1; 5 6 while (i + 1 < n && arr[i] <= arr[i + 1]) 7 i++; 8 if (i == n - 1) return 0; 9 10 while (j > i && arr[j - 1] <= arr[j]) 11 j--; 12 13 int res = min(n - i - 1, j); 14 for (int k = 0; k <= i && j < n;) { 15 if (arr[j] >= arr[k]) 16 res = min(res, j - k++ - 1); 17 else 18 j++; 19 } 20 21 return res; 22 } 23 };