278.First Bad Version
Example:
Given n = 5, and version = 4 is the first bad version.
call isBadVersion(3) -> false
call isBadVersion(5) -> true
call isBadVersion(4) -> true
Then 4 is the first bad version. // Forward declaration of isBadVersion API.
bool isBadVersion(int version);
class Solution {
int firstBadVersion(int left, int right) {
if(left +1== right) return isBadVersion(left) ?left:right;
int mid=left+(right-left)/2 ;
// cout<<mid<<endl;
return isBadVersion(mid)? firstBadVersion(left,mid) : firstBadVersion(mid,right);
}
public:
int firstBadVersion(int n) {
if(n==1) return 1;
return firstBadVersion(1,n);
}
};Last updated