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

3066

nuriatalgatovna: Добрый день! Точно ли ответ в задаче 17? Нам кажется, что ответ 8. И программа не учитывает, что 3-ку мы получить не можем. По ссылке картинка с решением Скрин экрана На сайте еще несколько задач таких есть, которые ссылаются на числа, которых нет в ряду.

Ответов - 3

Поляков: [pre2] def f( start, end ): return 1 if start == end else \ 0 if start > end else \ f(start+2, end) + f(start+3, end) + f(start+start-1, end) print( f(2, 11) ) [/pre2]

nuriatalgatovna: Программное решение у нас такое же и получается ответ 17, но если посмотреть ответ в Excel будет видно, что программа ссылается на число 3, которое мы с помощью команд, представленных в условии получить не можем.

Поляков: nuriatalgatovna пишет: программа ссылается на число 3, которое мы с помощью команд, представленных в условии получить не можем Не понял этой мысли. Что значит "ссылается на число, которое мы получить не можем"? Если бы это было так, программа бы завалилась. Если вы имеете в виду, что мы добавляем 3 на каким-то шаге, выполнив команду "добавить предыдущее", то это "предыдущее" не обязательно должно находиться на траектории. Предыдущее в числовом ряду натуральных чисел.




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