Задача #2235
Количество программ
(Е.Джобс) Исполнитель преобразует число на экране. У исполнителя есть три команды, которые обозначены латинскими буквами:
A. Прибавить 2
B. Умножить на 3
C. Возвести в квадрат
Программа для исполнителя – это последовательность команд.
Сколько существует программ, для которых при исходном числе 3 результатом является число 49, при этом траектория вычислений не содержит числа 13?
Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы CBA при исходном числе 4 траектория будет состоять из чисел 16, 48, 50.
Войдите, чтобы история ответов и статистика сохранялись.
Решение
Ответ
11
Видео по задаче
def f(a, b):
if a > b or a == 13:
return 0
if a == b:
return 1
return f(a+2, b) + f(a*3, b) + f(a**2, b)
print(f(3, 49))