Исполнитель преобразует число на экране. У исполнителя есть три команды, которые обозначены буквами.
Программа для исполнителя – это последовательность команд.
Сколько существует программ, которые преобразуют исходное число \(6\) в число \(25,\) и при этом команда С выполняется в программе не более одного раза?
Решение:
Python
def f(n, targ, c):
if c > 1 or n > targ * 3:
return 0
if n == targ:
return 1
return f(n + 3, targ, c) + f(2 * n, targ, c) + f(n // 3, targ, c+1)
print(f(6, 25, 0))
Ответ: \(180\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене