class Solution {
public:
int firstBadVersion(int n) {
int left = 1, right = n, ans = n;
while(left <= right){
//以后尽量还是写下面这个格式的,防止INT型溢出
int mid = left + (right - left) / 2;
//如果false向左找,true向右找
if(!isBadVersion(mid))
left = mid + 1;
else{
right = mid - 1;
ans = mid;
}
}
return ans;
}
};
Accepted
22/22 cases passed (0 ms)
Your runtime beats 100 % of cpp submissions
Your memory usage beats 34.29 % of cpp submissions (5.9 MB)