Динамическое программирование для основных групп
Условия задач на динамическое программирование для основных групп
Черепаха
http://informatics.mccme.ru/moodle/mod/statements/view3.php?id=656&chapterid=2965 В левом верхнем углу прямоугольной таблицы размером N×M находится черепашка. В каждой клетке таблицы записано некоторое число. Черепашка может перемещаться вправо или вниз, при этом маршрут черепашки заканчивается в правом нижнем углу таблицы. Подсчитаем сумму чисел, записанных в клетках, через которую проползла черепашка (включая начальную и конечную клетку). Найдите наибольшее возможное значение этой суммы. Формат входных данных В первой строке входных данных записаны два натуральных числа N и M, не превосходящих 100 — размеры таблицы. Далее идет N строк, каждая из которых содержит M чисел, разделенных пробелами — описание таблицы. Все числа в клетках таблицы целые и могут принимать значения от 0 до 100. Формат выходных данных Программа должна вывести единственное число: максимальную возможную стоимость маршрута черепашки.Input | Output |
---|---|
3 4 1 1 2 1 2 2 1 1 2 1 2 1 | 9 |
Маршрут черепашки
http://informatics.mccme.ru/moodle/mod/statements/view3.php?id=656&chapterid=2966 В левом верхнем углу прямоугольной таблицы размером N×M находится черепашка. В каждой клетке таблицы записано некоторое число. Черепашка может перемещаться вправо или вниз, при этом маршрут черепашки заканчивается в правом нижнем углу таблицы. Подсчитаем сумму чисел, записанных в клетках, через которую проползла черепашка (включая начальную и конечную клетку). Найдите наибольшее возможное значение этой суммы. Формат входных данных В первой строке входных данных записаны два натуральных числа N и M, не превосходящих 100 — размеры таблицы. Далее идет N строк, каждая из которых содержит M чисел, разделенных пробелами — описание таблицы. Все числа в клетках таблицы целые и могут принимать значения от 0 до 100. Формат выходных данных Первая строка выходных данных содержит максимальную возможную сумму, вторая – маршрут, на котором достигается эта сумма. Маршрут выводится в виде последовательности, которая должна содержать N-1 букву D, означающую передвижение вниз и M-1 букву R, означающую передвижение направо. Если таких последовательностей несколько, необходимо вывести ровно одну (любую) из них.Input | Output |
---|---|
3 4 1 1 2 1 2 2 1 1 2 1 2 1 | 9 D R D R R |
Взрывоопасность
http://informatics.mccme.ru/moodle/mod/statements/view3.php?id=654&chapterid=913 При переработке радиоактивных материалов образуются отходы двух видов — особо опасные (тип A) и неопасные (тип B). Для их хранения используются одинаковые контейнеры. После помещения отходов в контейнеры последние укладываются вертикальной стопкой. Стопка считается взрывоопасной, если в ней подряд идет более одного контейнера типа A. Для заданного количества контейнеров N определить число безопасных стопок. Формат входных данных Одно число 1 ≤ N ≤ 20. Формат выходных данных Одно число — количество безопасных вариантов формирования стопки. Пример:Input | Output |
---|---|
2 | 3 |
Взрывоопасность-2
http://informatics.mccme.ru/moodle/mod/statements/view3.php?id=654&chapterid=914 При переработке радиоактивных материалов образуются отходы трех видов — особо опасные (тип A), неопасные (тип B) и совсем не опасные (тип C). Для их хранения используются одинаковые контейнеры. После помещения отходов в контейнеры последние укладываются вертикальной стопкой. Стопка считается взрывоопасной, если в ней подряд идет более одного контейнера типа A. Для заданного количества контейнеров N определить число безопасных стопок. Формат входных данных Одно число 1 ≤ N ≤ 20. Формат выходных данных Одно число — количество безопасных вариантов формирования стопки. Пример:Input | Output |
---|---|
2 | 8 |
Без трех единиц
http://informatics.mccme.ru/moodle/mod/statements/view3.php?id=654&chapterid=912 Определите количество последовательностей из нулей и единиц длины N (длина - это общее количество нулей и едииниц), в которых никакие три единицы не стоят рядом. Формат входных данных Одно число 1 ≤ N ≤ 40. Формат выходных данных Выведите количество искомых последовательностей. Гарантируется, что ответ не превосходит 231 − 1. Пример:Input | Output |
---|---|
2 | 7 |
Калькулятор
http://informatics.mccme.ru/moodle/mod/statements/view3.php?id=654&chapterid=2963 Имеется калькулятор, который выполняет три операции:- Прибавить к числу X единицу.
- Умножить число X на 2.
- Умножить число X на 3.
Input | Output |
---|---|
1 | |
5 | 3 |
562340 | 19 |
Калькулятор с восстановлением ответа
http://informatics.mccme.ru/moodle/mod/statements/view3.php?id=654&chapterid=2968 Имеется калькулятор, который выполняет три операции:- Прибавить к числу X единицу.
- Умножить число X на 2.
- Умножить число X на 3.
Input | Output |
---|---|
1 | |
5 | 121 |
562340 | 3333312222122213312 |
Последовательность из 0 и 1 длины N
Выведите все последовательности из 0 и 1 длины N. Формат входных данных Одно число 1 ≤ N ≤ 10. Формат выходных данных Последовательности из 0 и 1, по одной последовательности на строку, от наименьшей к наибольшей. Пример:Input | Output |
---|---|
3 |
000 001 010 011 100 101 110 111 |
Последовательность из 0 и 1 длины N без двух единиц подряд
Выведите все последовательности из 0 и 1 длины N, в которых нет двух подряд идущих единиц. Формат входных данных Одно число 1 ≤ N ≤ 10. Формат выходных данных Последовательности из 0 и 1, по одной последовательности на строку, от наименьшей к наибольшей. Пример:Input | Output |
---|---|
3 |
000 001 010 100 101 |