24 lines
291 B
Ruby
24 lines
291 B
Ruby
|
|
def solution(n)
|
|
gap = 0
|
|
maxgap = 0
|
|
bin = []
|
|
|
|
# revert number
|
|
while n > 0 do
|
|
bin.unshift(n%2)
|
|
n = (n>>1)
|
|
end
|
|
|
|
# count
|
|
bin.each do |b|
|
|
if b != 0 then
|
|
maxgap = gap if gap > maxgap
|
|
gap = 0
|
|
next
|
|
end
|
|
gap += 1
|
|
end
|
|
return maxgap
|
|
end
|
|
|