Задача к ЕГЭ по информатике на тему «Количество программ из A в B где траектория вычислений N команда» №2

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

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

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

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

Программа для исполнителя Май – это последовательность команд. Сколько различных результатов можно получить из исходного числа 7 в ходе исполнения программы, содержащей ровно 13 команд?

a = set() # Множество для ответа

# n — текущее число, c — кол-во совершённых команд
def f(n, c):
    if c == 13:
        a.add(n)
    else:
        f(n+1, c+1)
        f(n*3, c+1)
        f(n*2, c+1)

f(7, 0)
print(len(a))

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