Квадрат разлинован на N × N клеток (1 < N < 30). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю.
Квадрат ограничен внешними стенами. Между соседними клетками квадрата также могут быть внутренние стены. Сквозь стену Робот пройти не может.
Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клеткам маршрута Робота.
Робот может начать своё движение в одной из «угловых» клеток поля — тех, которые слева и сверху ограничены стенами. Таких начальных клеток на поле может быть несколько, включая левую верхнюю клетку поля. При разных запусках итоговые накопленные суммы могут различаться. При повторных запусках Робота начальная клетка должна отличаться от начальных клеток предыдущих запусков.
Определите максимальную и минимальную денежные суммы среди всех возможных итоговых сумм, которые может собрать Робот суммарно за 6 запусков из начальной клетки в правую нижнюю.
В ответе укажите два числа — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N × N, каждая ячейка которой соответствует клетке квадрата. Внутренние и внешние стены обозначены утолщёнными линиями.
Пример входных данных.
1
8
8
4
10
1
1
3
1
3
12
2
2
3
5
6
Ответ:
Решение. Сначала найдём максимальную денежную сумму. Для этого найдём максимальную денежную сумму для каждой ячейки таблицы. Скопируем границы и стенки на интервал А22:Т41.
В ячейку А22 введем формулу:
=A1+МАКС(A23;B22)
и скопируем её на диапазон А22:Т41.
Для ячеек у которых справа от них есть стена, их значение будет вычисляться как сумма текущей ячейки и ячейки выше.
Для таких ячеек из формулы уберем второе значение в функции МАКС.
Для ячеек у которых снизу от них есть стена, их значение будет вычисляться как сумма текущей ячейки и ячейки левее.
Для таких ячеек из формулы уберем первое значение в функции МАКС.
В тупиковых ячейках таблицы, из которых робот не сможет дойти до правой нижней ячейки (это ячейки J39, P40 и R37), поставим заведомо малое значение, например -10000.
Получим таблицу:
Робот мог начать свое движение из ячеек: A22, B23, D24, C30, G25, F33, H31,K24, N24 и L34.
Посчитаем сумму пяти наибольших значении из ячеек A22, B23, D24, C30, G25, F33, H31,K24, N24 и L34, вручную или при помощи формулы: