РУҚА
18

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

ЕГЭ · Информатика · Тапсырма 18 · Дерекқорлар және іздеу
ЖоғарыФИПИE30D28Қысқа жауап≈ 10 минутТалдау 4 қадам
Условие

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

Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клеткам маршрута Робота.

В «угловых» клетках поля — тех, которые справа и снизу ограничены стенами, Робот не может продолжать движение, поэтому накопленная сумма считается итоговой. Таких конечных клеток на поле может быть несколько, включая правую нижнюю клетку поля. При разных запусках итоговые накопленные суммы могут различаться.

Определите максимальную и минимальную денежные суммы среди всех возможных итоговых сумм, которые может собрать Робот, пройдя из левой верхней клетки в конечную клетку маршрута. Исходные данные представлены в прилагаемом файле электронной таблицы размером $N \times N$, каждая ячейка которой соответствует клетке квадрата. Внутренние и внешние стены обозначены утолщёнными линиями.

Тапсырманы ашып, өзіңіз шешіңіз
Дальше ответЕгер әлі шешіп жатсаңыз – кеңестерден бастаңыз: олар жауапқа жетелейді, бірақ оны ашпайды.
К подсказкам

Шешім по шагам

4 қадам
1

Создадим для каждой клетки два значения: максимальную и минимальную сумму монет на пути из левой верхней клетки в эту клетку.

$$maxSum[i,j],\ minSum[i,j]$$
2

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

$$maxSum[i,j] = a[i,j] + \max(maxSum\text{ предшественников})$$
3

Аналогично вычисляется минимальная сумма.

$$minSum[i,j] = a[i,j] + \min(minSum\text{ предшественников})$$

К конечным относятся клетки, для которых движение вправо и движение вниз невозможно из-за внешней или внутренней стены. Среди значений в таких клетках выбираются общий максимум и общий минимум.

Жауап

Максимальная и минимальная суммы определяются по данным из прилагаемого файла.

Бұл жауап талдау нәтижесінде алынды, бірақ банктің ресми кілтімен тексерілген жоқ — проверьте выкладки, прежде чем заучивать результат.

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

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

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

Разрешать переход через внутреннюю стену.

Считать конечной только правую нижнюю клетку.

Перепутать порядок ответа: сначала требуется максимум, затем минимум.

Закрепить приёмВ теме «Дерекқорлар және іздеу» ещё 124 тапсырма — жауабымен және дәл осындай талдауымен.
Жаттығу

Тапсырманы қалай шешу керек 18 ЕГЭ, информатика

Бұл есептің талдауы келесіге бөлінген: 4 шага: видно, откуда берётся каждое число и где теряется балл. Жауап есептеулердің жанында келтірілген, олардың орнына емес.

Задача из темы «Базы данных и поиск»: в ней 125 задач, и у каждой есть такой же разбор. Тіркеу қажет емес.