Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Исполнитель, преобразующий числа, python

Александр Ильёв Ученик (91), закрыт 1 неделю назад
Нужен код в пайтоне с решением

Непоседливый Непоседа решил сыграть в игру. Он придумал исполнителя, преобразующего числа на доске и имеющего три команды:
1. Вычесть 2
2. Вычесть 4
3. Извлечь корень
Первые две команды уменьшают число на доске на 2 и 3 соответственно, третья команда — извлекает из числа квадратный корень, если число является квадратом любого числа. Программа для такого исполнителя — это последовательность команд. Сколько существует программ, которые преобразуют исходное число 46 в число 2 и содержат в траектории числа 32 и 12?
Лучший ответ
Андрей Зверев Профи (770) 1 месяц назад
 
def f(x,y):
if x<y :
return 0
if x ==y:
return 1
else:
return f(x-2, y)+f(x-4, y)+ f((x**0,5), y)
print(f(46,32)*f(32,12)*f(12,2))
Остальные ответы
Павел Костенко Знаток (470) 1 месяц назад
помогите человеку с кодом на питхоне
Андрей Высший разум (477157) 1 месяц назад
 t = {46: 1} 
for i in range(45, 1, -1):
t[i] = t.get(i + 2, 0) + t.get(i + 4, 0) + t.get(i * i, 0)
if i in [12, 32]: # удаление траекторий не проходящих через 32 и 12
for j in range(i + 1, 47): t[j] = 0
print(t[2])
Александр ИльёвУченик (91) 1 месяц назад
Cпасибо!
Похожие вопросы