РУҚА
18

Решение: Максимальная и минимальная сумма

ЕГЭ · Информатика · Задание 18 · Динамическое программирование
ПовышеннаяФИПИ779E0AКороткий ответ≈ 5 минутРазбор в 5 шагов
Условие

Квадрат разлинован на $N \times N$ клеток ($1 < N < 30$). Исполнитель Робот может перемещаться по клеткам только вправо или вниз. Между соседними клетками могут быть внутренние стены, через которые Робот пройти не может. В каждой клетке лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету, в том числе в начальной и конечной клетках. Определите максимальную и минимальную денежные суммы, которые может собрать Робот, пройдя из левой верхней клетки в правую нижнюю.

1234
1884
10113
13122
2356
Таблица 1 · достоинства монет

В таблице приведён пример входных данных; внутренние и внешние стены обозначены утолщёнными линиями.

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

5 шагов
1

Сначала вычислим максимальные суммы для путей до каждой клетки. В первой строке и первом столбце путь однозначен.

$$M_{1,1}=1$$
2

Для остальных клеток прибавляем значение монеты к большему из двух возможных предыдущих результатов.

$$M_{i,j}=a_{i,j}+\max(M_{i-1,j},M_{i,j-1})$$
3

В правой нижней клетке максимальная сумма равна $41$.

4

Аналогично вычисляем минимальные суммы, выбирая меньший из двух предыдущих результатов.

$$m_{i,j}=a_{i,j}+\min(m_{i-1,j},m_{i,j-1})$$

В правой нижней клетке минимальная сумма равна $22$.

Ответ
41 22
41 22
так ответ выглядит в бланке

Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.

Где здесь ошибаются

Не учитывают монеты в начальной или конечной клетке.

Перепутывают порядок ответа и записывают сначала минимум.

Для максимума используют минимум из двух предыдущих значений или наоборот.

Закрепить приёмВ теме «Динамическое программирование» ещё 71 задача — с ответом и таким же разбором.
Тренироваться

Как решать задание 18 ЕГЭ, информатика

Разбор этой задачи разложен на 5 шагов: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Динамическое программирование»: в ней 72 задачи, и у каждой есть такой же разбор. Регистрация не нужна.