Форум » Динамическое программирование » Задача № 5094 » Ответить

Задача № 5094

Елена_10: Здравствуйте! не знаю как довести до ума программу: Непоседливый Непоседа решил сыграть в игру. Он придумал исполнителя, преобразующего числа на доске и имеющего три команды: 1. Прибавь 3 2. Сделай чётное 3. Сделай нечётное Сколько существует программ, которые преобразуют исходное число 1 в 76, а траектория вычислений программы содержит не более пяти преобразований в чётное? [pre2]def f(c,e): k=0 if c<e and c%2==0: f(c+3,e) f(c*2+1,e) if c<e and c%2!=0 and k<=5: f(c+3,e) f(c*2,e) k=k+1 if c==e: return 1 if c>e: return 0 print(f(1,76)) [/pre2]

Ответов - 1

Поляков: Нужно передавать k в параметрах функции. У вас это локальная переменная.



полная версия страницы