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

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

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

2. Прибавить 10

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

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

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

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

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

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