278. First Bad Version
/* The isBadVersion API is defined in the parent class VersionControl.
public function isBadVersion($version){} */
class Solution extends VersionControl {
/**
* @param Integer $n
* @return Integer
*/
function firstBadVersion($n) {
$start = 1;
while($start < $n) {
$middle = (int)floor($start + ($n - $start) / 2);
if ($this->isBadVersion($middle)) {
$n = $middle;
} else {
$start = ++$middle;
}
}
return $n;
}
}
Last updated