Ctrl K

Место по числу шагов градины

Средняя
Возьмём натуральное число и будем менять его по правилу: чётное делим пополам, нечётное x заменяем на 3x + 1. Назовём **длиной пути** числа, сколько таких шагов нужно, чтобы дойти до 1 (у самой 1 длина пути 0). Например, у 6 путь 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1, это 8 шагов. Даны числа low, high и place. Выпишите все целые числа от low до high включительно и упорядочьте их по возрастанию длины пути; при равной длине меньшее число идёт раньше. Верните число, которое окажется на месте place (нумерация с 1). Для всех чисел из диапазона гарантируется, что они доходят до 1.
Пример 1
low=6, high=9, place=1 → 8

Шагов: у 6 — 8, у 7 — 16, у 8 — 3, у 9 — 19. По возрастанию шагов: 8, 6, 7, 9. Первое место — 8.

Пример 2
low=6, high=9, place=3 → 7

В том же порядке 8, 6, 7, 9 третьим стоит 7.

Пример 3
low=1, high=4, place=2 → 2

У 1 — 0 шагов, у 2 — 1, у 4 — 2, у 3 — 7 (3 → 10 → 5 → 16 → 8 → 4 → 2 → 1). Порядок 1, 2, 4, 3, второе место — 2.

Ограничения
  • 1 ≤ low ≤ high ≤ 1000
  • 1 ≤ place ≤ high − low + 1
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПодъём по строкам и столбцам СложнаяРазбиение на слова из словаря СредняяВсе результаты расстановки скобок СредняяЦепочка кратных СредняяСпуск до единицы Средняя
загружаем Python…
Вход
low=6, high=9, place=1
Ожидается
8

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