Задача #1527

Количество программ

Уровень ЕГЭ

(М. Ишимов) Исполнитель преобразует число на экране.

У исполнителя есть три команды, которые обозначены латинскими буквами:
A. Вычесть 3
B. Найти целую часть от деления на 2
C. Вычесть 5

Программа для исполнителя – это последовательность команд.
Сколько существует программ, для которых при исходном числе 43 результатом является число 16, и при этом траектория вычислений содержит число 32?

Ответ
Войдите, чтобы история ответов и статистика сохранялись.
Решение Нажми, чтобы открыть

Ответ

21
def f(s, e):
if s <= e: return s == e
return f(s - 3, e) + f(s // 2, e) + f(s - 5, e)
print(f(43, 32) * f(32, 16))
Быстрый переход
Перейти к задаче