Есть прекрасная техника, называемая динамическим программированием. Олимпиадникам она знакома, а для остальных — постарался описать на примере решения простой задачи (кажется простой, но... решить смогут не все xD). При этом чтобы показать проблемы, которые решает эта техника — я привел ряд промежуточных решений.
Суть динамического программирования состоит в том, что мы:
* разбиваем сложную задачу на более простые;
* результаты вычисления простых задач где–то накапливаем (чтобы не вычислять повторно);
Отсюда следует, что динамическое программирование даст хороший результат только, когда:
* задача является рекуррентной (более сложный случай можно описать через более простой);
* задачи пересекаются — результаты вычисления частей задачи используются многократно.
Читать дальше: https://pro-prof.com/forums/topic/dynamic-progress-on_example
![]()
Это интересно
0
|
|||
Последние откомментированные темы: