Ctrl K

Самый широкий промежуток между единицами

Лёгкая
Дано положительное целое number. Запишите его в двоичной системе и посмотрите на каждую пару **соседних** единиц — таких, между которыми стоят только нули (или ничего). Расстояние между ними — разница их позиций: например, в 1001 единицы на расстоянии 3. Верните наибольшее такое расстояние. Если единица в записи только одна, верните 0.
Пример 1
number=41 → 3

41 в двоичной записи — 101001. Соседние единицы стоят на расстоянии 2 и 3, наибольшее — 3.

Пример 2
number=16 → 0

16 — это 10000, единица одна, пары нет — ответ 0.

Пример 3
number=7 → 1

7 — это 111, все единицы стоят вплотную, расстояние 1.

Ограничения
  • 1 ≤ number ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСумма двоичных строк ЛёгкаяЧисло без пары ЛёгкаяБиты задом наперёд ЛёгкаяСколько единиц в числе ЛёгкаяРазмер плотного дерева Лёгкая
загружаем Python…
Вход
number=41
Ожидается
3

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 52 теста на сервере, включая скрытые.