Max Chunks To Make Sorted II LeetCode solution in C++

1
class Solution {
2
public:
3
int maxChunksToSorted(vector<int> &arr) {
4
vector<int> right(arr.size() + 1);
5
right[arr.size()] = INT_MAX;
6

7
for (int i = arr.size() - 1; i >= 0; i--) {
8
right[i] = min(right[i + 1], arr[i]);
9
}
10
int left_max = INT_MIN;
11
int count_chunks = 0;
12
for (int i = 0; i < arr.size(); i++) {
13
left_max = max(left_max, arr[i]);
14
if (left_max <= right[i + 1]) count_chunks++;
15
}
16
return count_chunks;
17
}
18
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0