Задание 23. Информатика. ЕГЭ 2024. Резерв. 19.06.2024
- Просмотры: 85
- Изменено: 24 ноября 2024
Исполнитель преобразует число на экране. У исполнителя есть две команды, которые обозначение латинскими буквами:
A. Вычти \(2\).
B. Найди целую часть от деления на \(2\).
Программа для исполнителя — это последовательность команд.
Сколько существует программ, для которых при исходном числе \(32\) результатом является число \(1\) и при этом траектория вычисления содержит число \(8\)?
Траектория вычисления программы — это последовательность результатов выполнения всех команд программы. Например, для программы \(ABB\) при исходном числе \(13\) траектория состоит из чисел \(11\), \(5\), \(2\).
Решение:
Python
def f(n, target):
if n < target:
return 0
if n == target:
return 1
return f(n - 2, target) + f(n // 2, target)
print(f(32, 8) * f(8, 1))
Ответ: \(42\)