Каким условиям должна соответствовать задача программирования, чтобы ее можно было решить с помощью динамического программирования?Какие рассуждения вы делаете для того, чтобы выяснить это?
Как только вы решите, что у него действительно есть решение DP, тогда как вы будете продолжать создавать алгоритм DP, который его решает?Какова логика создания таких алгоритмов?