Исполнитель Май преобразует число, записанное на доске. У исполнителя есть три команды:
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