leetcodeSolution to some Leetcode problems written in C++ |
git clone git://git.dimitrijedobrota.com/leetcode.git |
Log | Files | Refs | README | LICENSE |
0915.cpp (504B)
0 class Solution { 1 public: 2 int partitionDisjoint(vector<int> &nums) { 3 int n = nums.size(); 4 vector<int> left(n), right(n); 5 6 left[0] = nums[0]; 7 right.back() = nums.back(); 8 for (int i = 1; i < nums.size(); i++) { 9 left[i] = max(nums[i], left[i - 1]); 10 right[n - i - 1] = min(nums[n - i - 1], right[n - i]); 11 } 12 13 for (int i = 0; i < n - 1; i++) 14 if (left[i] <= right[i + 1]) return i + 1; 15 return -1; 16 } 17 };