(Л. Шастин) Квадрат разлинован на N × N клеток (1 < N < 30). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю нижнюю. Квадрат ограничен внешними стенами. Между соседними клетками квадрата также могут быть внутренние стены. Сквозь стену Робот пройти не может.
Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клеткам маршрута Робота.
В «угловых» клетках поля - тех, которые справа и снизу ограничены стенами, Робот не может продолжать движение, поэтому накопленная сумма считается итоговой. Таких конечных клеток на поле может быть несколько, включая правую нижнюю клетку поля. При разных запусках итоговые накопленные суммы могут различаться.
(Л. Шастин) Квадрат разлинован на N × N клеток (1 < N < 30).
Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз.
По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю.
Квадрат ограничен внешними стенами.
Между соседними клетками квадрата также могут быть внутренние стены.
Сквозь стену Робот пройти не может.
Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100.
Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клеткам маршрута Робота.
В «угловых» клетках поля — тех, которые справа и снизу ограничены стенами, Робот не может продолжать движение, поэтому накопленная сумма считается итоговой.
Таких конечных клеток на поле может быть несколько, включая правую нижнюю клетку поля.
При разных запусках итоговые накопленные суммы могут различаться.
Определите максимальную и минимальную денежные суммы, среди всех возможных итоговых сумм, которые может собрать Робот, пройдя из левой верхней клетки в конечную клетку маршрута.
В ответе укажите два числа — сначала минимальную сумму, затем максимальную.
Исходные данные представляют собой электронную таблицу размером N × N, каждая ячейка которой соответствует клетке квадрата.
Внутренние и внешние стены обозначены утолщёнными линиями.
Решение 1
Сначала найдём максимальную денежную сумму. Для этого найдём максимальную денежную сумму для каждой ячейки таблицы. Скопируем границы и стенки на интервал A22:T41.
В ячейку A22 введём формулу:
=A1
Для ячеек правее A1, так как робот в неё может прийти только слева, сумма будет определяться как сумма текущей ячейки и ячейки слева. В ячейке B22 запишем формулу:
=A22+B1
и скопируем её на диапазон A22:T22.
Для ячеек ниже A1, так как робот в неё может прийти только сверху, сумма будет определяться как сумма текущей ячейки и ячейки сверху. В ячейке A23 запишем формулу:
=A22+A2
и скопируем её на диапазон A22:A41.
В ячейку B23 введём формулу:
=B2+МАКС(B22;A23)
и скопируем её на диапазон A22:T41.
Для ячеек, у которых справа от них есть стена, их значение будет вычисляться как сумма текущей ячейки и ячейки выше.
Для ячеек, у которых снизу от них есть стена, их значение будет вычисляться как сумма текущей ячейки и ячейки левее.
В ячейки, в которые робот не может попасть, запишем 0.
Получим таблицу:
Робот может остановиться в ячейках: E41, I41, M41 и T41.
В ячейку U42 запишем формулу =МАКС(E41;I41;M41;T41) — максимум по всем конечным клеткам.
Таким образом, получим значение максимальной денежной суммы — 2673.
Для нахождения минимальной суммы заменим значения МАКС на значение МИН с помощью окна «Найти и заменить». В ячейках, которые робот не сможет посетить, поставим заведомо большое значение, например 10000.
Получим таблицу:
В ячейку U43 запишем формулу =МИН(E41;I41;M41;T41) — минимум по всем конечным клеткам.
Таким образом, получим значение минимальной денежной суммы — 1100.