Задание
У исполнителя Калькулятор есть три команды.
- Прибавить 2.
- Умножить на 3.
- Умножить на 4.
Сколько разных чисел на отрезке [200, 300] можно получить из числа 1 с помощью программ, состоящих ровно из пяти команд?
Решение:
a = []
def F(x, k):
if k == 5:
a.append(x)
return
F(x + 2, k + 1)
F(x * 3, k + 1)
F(x * 4, k + 1)
F(1, 0)
a = set(a)
c = 0
for i in a:
if 200 <= i <= 300:
c += 1
print(c) # 8
Ответ 8
Ответ:
8