У исполнителя имеются три команды, которые обозначены латинскими буквами:
Программа для исполнителя – это последовательность команд. Сколько существует программ, для которых при исходном числе \(2\) результатом является \(38,\) при этом траектория вычислений содержит \(25\) или \(26,\) и не содержит чисел \(22\) и \(33?\)
Решение:
Python
def f(n, targ, deny=(22, 33)):
if n >= targ:
return int(n == targ)
if n in deny:
return 0
return f(n + 1, targ, deny) + f(n + 3, targ, deny) + f(n * 3, targ, deny)
n25 = f(2, 25) * f(25, 38)
n26 = f(2, 26) * f(26, 38)
n2526 = f(2, 25) * f(25, 26) * f(26, 38)
print(n25 + n26 - n2526)
Ответ: \(89592\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене