Динамическое программирование – это мощный метод оптимизации, который применяется для решения задач, обладающих свойствами оптимальной подструктуры и перекрывающимися подзадачами. Задача: Дана последовательность чисел. Найти длину наибольшей возрастающей подпоследовательности. Решение: Псевдокод: for i in range(1, n):
for j...
Хорошая задача на динамическое программирование, без каких-либо подводных камней. Читаем условие: Как часто бывает в задачах на динамическое программирование, основная сложность заключается в придумывании рекуррентного соотношения и понимании принципа работы, а не в написании кода (потому что обычно в них один или два цикла, просто заполняющие массив). Поэтому давайте сконцентрируемся на методе решения. Для начала надо определить, что будет состоянием в динамике. В данной задаче с этим нет проблем - это номер платформы, на которой стоит герой...