Open yankewei opened 1 year ago
class Solution {
/**
* @param Integer[] $seats
* @return Integer
*/
function maxDistToClosest($seats) {
$ret = 0;
$left = 0;
while ($left < count($seats) && $seats[$left] === 0) {
$left++;
$ret = max($ret, $left);
}
while ($left < count($seats)) {
$right = $left + 1;
while ($right < count($seats)) {
if ($seats[$right] === 1) {
break;
} else {
$right++;
}
}
if ($right === count($seats)) {
$ret = max($ret, $right - $left - 1);
} else {
$ret = max($ret, intval(($right - $left)/2));
}
$left = $right;
}
return $ret;
}
}
给你一个数组 seats 表示一排座位,其中 seats[i] = 1 代表有人坐在第 i 个座位上,seats[i] = 0 代表座位 i 上是空的(下标从 0 开始)。
至少有一个空座位,且至少有一人已经坐在座位上。
亚历克斯希望坐在一个能够使他与离他最近的人之间的距离达到最大化的座位上。
返回他到离他最近的人的最大距离。
示例 1:
示例 2:
示例 3:
提示: