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