Ctrl K

До цели с ограниченными удвоениями

Средняя
На табло горит число 1. За один шаг его можно либо увеличить на единицу, либо удвоить. Прибавлять единицу можно сколько угодно раз, а удваивать — не больше doublings раз за всю игру. Верните наименьшее число шагов, за которое на табло окажется ровно goal.
Пример 1
goal=13, doublings=1 → 7

С 1 прибавляем пять раз до 6, удваиваем до 12 и прибавляем ещё один раз: 5 + 1 + 1 = 7 шагов.

Пример 2
goal=24, doublings=5 → 5

1 → 2 → 3 → 6 → 12 → 24: четыре удвоения и одно прибавление, всего 5 шагов.

Пример 3
goal=7, doublings=0 → 6

Удваивать нельзя, остаётся шесть раз прибавить единицу.

Ограничения
  • 1 ≤ goal ≤ 10⁹
  • 0 ≤ doublings ≤ 100
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиНаименьшее число из цифр-множителей СредняяОдин обмен цифр СредняяНеубывающие цифры не больше заданного СредняяСколько гостей на конференции СредняяПодтянуть или опустить Средняя
загружаем Python…
Вход
goal=13, doublings=1
Ожидается
7

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