1060. Missing Element in Sorted Array
https://leetcode.com/problems/missing-element-in-sorted-array/
class Solution {
public:
int missingElement(vector<int>& nums, int k) {
const int N = nums.size();
int missingNum = nums[N - 1] - nums[0] + 1 - N;
if (missingNum < k) return nums[N - 1] + k - missingNum;
int start = 0, end = N - 1;
while (start < end - 1) {
int mid = start + (end - start) / 2;
int missing = nums[mid] - nums[start] - (mid - start);
if (missing < k) {
start = mid;
k -= missing;
} else end = mid;
}
return nums[start] + k;
}
};Last updated