Задача типа #23: Динамической программирование
Динамической программирование
Исполнитель преобразует число на экране.
У исполнителя есть три команды, которые обозначены латинскими буквами:
A. Прибавить 1
B. Прибавить 2
C. Умножить на 2
Программа для исполнителя – это последовательность команд.
Сколько существует программ, которые преобразуют число 7 в число 51, и при этом траектория вычислений содержит числа 13 и 15, но не содержит числа 35?
Траектория вычислений программы – это последовательность результатов выполнения всех команд программы.
Например, для программы AСB при исходном числе 2 траектория состоит из чисел 3, 6, 8
Ответ:
174034068
Алгоритм решения: Создаём функцию в котороый указываем условия для return 0 и 1, рекурсивно вызываем функцию для всех вариантов команд, находим сумму всех успешных вариантов. Возможно другое решение.
Алгоритм решения: Создаём функцию в котороый указываем условия для return 0 и 1, рекурсивно вызываем функцию для всех вариантов команд, находим сумму всех успешных вариантов. Возможно другое решение.
Посмотреть решение задачи (код на Python) в Telegram боте по ID задачи 123007