Задача к ЕГЭ по информатике на тему «количество программ из a в b где траектория вычислений содержит число(-а)» №1

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

1. Вычти 5

2. Вычти 7

Первая из них уменьшает число на экране на 5, вторая уменьшает число на экране на 7.

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

Сколько существует программ, для которых при исходном числе 101 результатом является число 20, и при этом траектория вычислений содержит число 37?

Решение программой:

def f(x,y):
    if x < y :
        return 0
    if x == y:
        return 1
    if x > y:
        return f(x - 5, y) + f(x - 7, y)

print(f(101, 37) * f(37, 20))

Ответ: 558
Оцените статью
Я решу все!