Задание 23. Информатика. ЕГЭ. Статград. 17.12.2024
- Просмотры: 2963
- Изменено: 1 февраля 2025
Исполнитель преобразует число на экране. У исполнителя есть две команды, которые обозначены буквами:
- Вычти
- Если число чётное, Раздели на
Иначе Вычти
Программа для исполнителя – это последовательность команд. Сколько существует программ, которые преобразуют исходное число
Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы BAB при исходном числе
Решение:
Python
def f(n, t):
if n < t or n == 12:
return 0
if n == t:
return 1
return f(n - 3, t) + f(n // 2 if n % 2 == 0 else n - 5, t)
print(f(36, 3))
Ответ: