PHP Binary Gap
function binaryGap(int $n): int
{
$gap = 0;
$zeroes = explode('1', trim(decbin($n), '0'));
foreach ($zeroes as $zero) {
$len = strlen($zero);
$gap = $len > $gap ? $len : $gap;
}
return $gap;
}
This turns the number into binary, ignores zeroes outside the edges, and finds the longest run of zeroes between 1s.