Присоединиться

11 класс·средний уровень

Сколько существует таких программ, которые число 1 преобразуют в число

Условие

Исполнитель НечетМ преобразует число на экране. У исполнителя НечетМ две команды, которым присвоены номера.1. Прибавь 1.2. Сделай нечётное.

Первая из этих команд увеличивает число x на экране на 1, вторая переводит число x в число 2x + 1. Например, вторая команда переводит число 10 в число 21. Программа для исполнителя НечетМ — это последовательность команд. Сколько существует таких программ, которые число 1 преобразуют в число 27, причём траектория вычислений не содержит число 26? Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 17, 18.

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. Используем метод динамического программирования. Заведем массив dp, где dp[i] — количество способов получить число i с помощью таких команд.

    База динамики:dp[1] = 1.Формула перехода:dp[i] = dp[i - 1] — если i четное;dp[i] = dp[i - 1] + dp[(i -

Осталось ещё 3 шага

  1. : 2] — если i нечетное. Но при этом если i…

  2. : 2 = 26, то оно не учитывается. Можно…

  3. Приведём другое решение на языке Python. def…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Оператор присваивания и ветвления. Перебор вариантов»

Сколько существует таких программ, которые число 1 преобразуют в число — решение с объяснением | Lom Ai