Ctrl K

Номер в списке двоичных кодов

Средняя
Выпишем все строки из символов 0 и 1 в таком порядке: сначала по длине (от коротких к длинным), а строки одной длины — по возрастанию как двоичные числа. Первой идёт пустая строка: "", "0", "1", "00", "01", "10", "11", "000", ... Строки нумеруются с нуля. Дано число num — верните строку с этим номером.
Пример 1
num=5 → '10'

Список начинается так: "" (0), "0" (1), "1" (2), "00" (3), "01" (4), "10" (5).

Пример 2
num=0 → ''

Первый в списке — пустой код.

Пример 3
num=13 → '110'

Кодов длины не больше 2 всего 7 (номера 0–6), далее идут восемь кодов длины 3: "000" имеет номер 7, "110" — номер 13.

Ограничения
  • 0 ≤ num < 2⁶²
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиЧисла из четвёрок и семёрок СредняяСумма двоичных строк ЛёгкаяЧисло римскими цифрами СредняяДеление без деления СредняяУмножение длинных чисел в строках Средняя
загружаем Python…
Вход
num=5
Ожидается
'10'

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