270 читали · 2 года назад
Динамическое программирование, кто его придумал и зачем оно нужно.
В технике, экономике и некоторых других направлениях иногда приходится решать задачи на поиск оптимального пути или состояния. По сути это цель любой автоматизации - минимизировать затраты или получить наилучший результат. Это понятие ввёл в 40-ых годах прошлого века Ричард Беллман. Идея достаточно простая - для того чтобы получить конечный результат, необходимо предварительно решить несколько вспомогательных задач. Решить каждую из которых можно решив их предварительные задачи. Саму постановку...
🔥 «Как решить задачу на динамическое программирование в ЕГЭ и не сойти с ума: разбор на примере Python»
Вступление: 📌 «Динамическое программирование» звучит сложно? На самом деле это просто способ разбить большую проблему на маленькие шаги. Сегодня разберем задачу, которая встречается в ЕГЭ каждый год, и докажем, что алгоритмы — это логично и даже красиво! «Исполнитель может умножать число на 2, добавлять 1 или 3. Сколько существует программ, преобразующих число 1 в число 15, если в промежуточных действиях не должно быть числа 10?» 🔍 Что нужно найти? Количество уникальных последовательностей команд, ведущих от 1 к 15, минуя 10. 💡 Почему это типично для ЕГЭ? Задачи на подсчет путей с ограничениями проверяют умение строить рекуррентные соотношения — ключевой навык для программиста...