Skip to content

Commit e2b3adb

Browse files
authored
Update Kth Missing Positive Number.java
1 parent bd82edb commit e2b3adb

File tree

1 file changed

+9
-14
lines changed

1 file changed

+9
-14
lines changed

Easy/Kth Missing Positive Number.java

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,15 @@
11
class Solution {
22
public int findKthPositive(int[] arr, int k) {
3-
for (int i = 0; i < arr.length; i++) {
4-
int curr = arr[i] - 1;
5-
int prev = i == 0 ? 0 : arr[i - 1];
6-
while (prev < curr) {
7-
k--;
8-
prev++;
9-
if (k == 0) {
10-
return prev;
11-
}
3+
int left = 0;
4+
int right = arr.length - 1;
5+
while (left <= right) {
6+
int mid = left + (right - left) / 2;
7+
if (arr[mid] - mid - 1 < k) {
8+
left = mid + 1;
9+
} else {
10+
right = mid - 1;
1211
}
1312
}
14-
int curr = arr[arr.length - 1];
15-
while (k-- > 0) {
16-
curr++;
17-
}
18-
return curr;
13+
return left + k;
1914
}
2015
}

0 commit comments

Comments
 (0)