Задание 23. Информатика. ЕГЭ. Поляков-7224
- Просмотры: 208
- Изменено: 24 ноября 2024
(М. Шагитов) У исполнителя Калькулятор имеются три команды, которые обозначены латинскими буквами:
А. Прибавить \(2\)
B. Прибавить \(3\)
C. Умножить на \(4\)
Программа для исполнителя — это последовательность команд, каждая из которых изменяет число. Найдите количество программ, для которых при исходном числе \(1\) результатом является число \(50\), и при этом запрещено использование команды \(А\) сразу после команды \(С\).
Решение:
Python
def f(n, t, p):
if n > t:
return 0
if n == t:
return 1
if p == 'C':
return f(n + 3, t, 'B') + f(n * 4, t, 'C')
return f(n + 2, t, 'A') + f(n + 3, t, 'B') + f(n * 4, t, 'C')
print(f(1, 50, ''))
Ответ: \(484575\)