Как решать задачи на acmp.ru (Типы задач, коды ошибок, рейтинг и др.)
Задача 11. Зайчик
Предлагаю потренироваться решать задачи на динамическое программирование на одной из классических задач. Читаем условие: Как определить, что задача на динамическое программирование? Кроме того, что на сайте указан раздел, из которого задача, метод динамического программирования чаще всего помогает отвечать на вопросы "сколько способов?" и "какой способ оптимальный?". Да, есть ещё варианты, например, зная количество способов и первое число в "решении" можно найти k-ое по счёту решение. Итак, в этой задаче как раз надо посчитать количество способов подняться на лестницу...
Задача 638. Всероссийская олимпиада по информатике
Не так много задач на динамическое программирование разобрано на канале, давайте исправляться. Условие: Разнообразные входные данные, но ограничения не очень большие. Должна легко решать на языке Python. Так как олимпиада должна помещаться в один месяц, а размер месяца всего лишь до 100000, то можно завести массив такого размера и пометить все дни, в которые проводить олимпиаду нельзя. Давайте так и сделаем. Считывание первого блока входных данных очень простое: После этого идёт список еженедельных выходных, заданных номерами дней недели...