Квадрат разлинован на клеток. В левом верхнем углу квадрата стоит ладья. Ладья может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо X или вниз X. По команде вправо ладья перемещается на X клеток вправо, по команде вниз – на X клеток вниз, где
. Квадрат ограничен внешними стенами, сквозь стену ладья пройти не может. Перед стартом ладьи в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Ладья забирает монету с собой только если ее номинал кратен 3; это также относится к начальной и конечной клетке маршрута Ладьи.
Определите минимальную и максимальную денежную сумму, которую может собрать ладья при перемещении из левого верхнего угла в правый нижний. В ответе укажите два числа через пробел – сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером , каждая ячейка которой соответствует клетке квадрата.
Нам дано поле 19 на 19, создадим еще одно поле такого же размера (ячейки ), в нем мы определим – забирать монету с собой или нет. В ячейку
запишем формулу и растянем ее на все поле:
=ЕСЛИ(ОСТАТ(A1;3)=0;A1;0)
Теперь необходимо скопировать получившееся поле и вставить на место исходного (Специальная вставка -> Значения), а созданное поле удалим.
Создадим еще одно поле такого же размера по диагонали (ячейки ).
Рассмотрим ячейку, в которую итоге нам нужно попасть , в нее можно попасть из любой ячейки диапазонов
и
, так как мы хотим минимизировать сумму, то будем искать минимальную из всех, а затем прибавим значение, которое и так содержится в этой ячейке. Тогда для ячейки
запишем формулу:
=МИН(T38:AK38;AL20:AL37)+S19
Теперь растянем ее по всем ячейкам нового поля и тогда в ячейке будет минимальная сумма, которую можно собрать. (Так как поле мы создавали по диагонали, то тот факт что формулы в остальных ячейках выходят из поля, нас не беспокоит).
Для поиска максимального значение алгоритм действий аналогичный, формула в ячейке будет выглядеть следующим образом:
=МАКС(T38:AK38;AL20:AL37)+S19