OpenFIPI 2.0

23

5

6A3CBC

Исполнитель Май15 преобразует число на экране.

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

1. Прибавить 1

2. Умножить на 2

Первая команда увеличивает число на экране на 1, вторая умножает его на 2.

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

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

Траектория вычислений программы  это последовательность результатов выполнения всех команд программы. Например, для программы 121
при исходном числе 7 траектория будет состоять из чисел 8, 16, 17.

14

def f(a, b):
    if a > b:
        return 0
    if a == b:
        return 1
    if a == 15:
        return 0
    return f(a + 1, b) + f(a * 2, b)


print(f(1, 10) * f(10, 21))

Просмотреть отправленные ответы 6A3CBC