Максимальная и минимальная сумма
Квадрат разлинован на $N \times N$ клеток ($1 < N < 30$). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде «вправо» Робот перемещается в соседнюю правую клетку, по команде «вниз» — в соседнюю нижнюю. Квадрат ограничен внешними стенами. Между соседними клетками квадрата также могут быть внутренние стены. Сквозь стену Робот пройти не может.
Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клеткам маршрута Робота.
Определите максимальную и минимальную денежные суммы, которые может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. Исходные данные представляют собой электронную таблицу размером $N \times N$, каждая ячейка которой соответствует клетке квадрата. Внутренние и внешние стены обозначены утолщёнными линиями.
Условие как в банке ФИПИ — открыть и сверить
| |||||||||||||||||||||
| |
Формат: число или слово без единиц измерения; дробную часть отделяйте запятой.
1Мягкая — с чего смотретьуровень 1 из 3
Рассматривайте клетки по строкам сверху вниз и внутри строки слева направо. Какие значения нужно хранить для каждой клетки?
2Наводящая — какие числа считатьуровень 2 из 3
Для каждой клетки вычисляйте отдельно максимальную и минимальную сумму монет на допустимом пути до неё. Переход возможен только из клетки сверху или слева, если между клетками нет стены.
3Прямая — фактически решениеуровень 3 из 3
Если $a_{i,j}$ — монета в клетке, то для максимума используйте $F_{i,j}=a_{i,j}+\max(F_{i-1,j},F_{i,j-1})$, а для минимума — $G_{i,j}=a_{i,j}+\min(G_{i-1,j},G_{i,j-1})$, исключая переходы через стены.
