Задача #1502

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

Уровень ЕГЭ

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

У исполнителя есть три команды, которые обозначены латинскими буквами:

A. Прибавить 2

B. Возвести в квадрат

C. Умножить на 3

Программа для исполнителя – это последовательность команд.

Сколько существует программ, для которых при исходном числе 2 результатом является число 64, если после выполнения команды B можно выполнить только команду A или C?

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

Ответ

55

Видео по задаче

def f(s, e, last):
if s > e: return 0
if s == e: return 1
if last == 2: return f(s + 2, e, 1) + f(s * 3, e, 3)
return f(s + 2, e, 1) + f(s ** 2, e, 2) + f(s * 3, e, 3)
print(f(2, 64, 0))
Быстрый переход
Перейти к задаче