Problems: https://leetcode.com/problems/first-bad-version/
Solution:
Binary Search
public class Solution extends VersionControl {
public int firstBadVersion(int n) {
int l = 1;
int r = n;
int mid = 0;
while(l<r) {
// mid = (l+r)/2; #(l + r) would cause ovrflow
mid = l + (r-l)/2;
if (isBadVersion(mid)) {
r = mid;
} else {
l = mid+1;
}
}
return l;
}
}