Тип 18 № 81484 
Робот-сборщик монет. Задания для подготовки
i
Исполнитель Робот стоит в левом нижнем углу поля, разлинованного на клетки. Он может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вверх. По команде вправо Робот перемещается в соседнюю правую клетку; по команде вверх — в соседнюю верхнюю. Между соседними клетками квадрата также могут быть внутренние стены. Сквозь стену Робот пройти не может. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клеткам маршрута Робота. В «угловых» клетках поля — тех, которые справа и сверху ограничены стенами, Робот не может продолжать движение, поэтому накопленная сумма считается итоговой. Таких конечных клеток на поле может быть несколько, включая правую верхнюю клетку поля. При разных запусках итоговые накопленные суммы могут различаться. Определите максимальную и минимальную денежные суммы, среди всех возможных итоговых сумм, которые может собрать Робот, пройдя из левой нижней клетки в конечную клетку маршрута.
Исходные данные записаны в файле в виде электронной таблицы, каждая ячейка которой соответствует клетке поля. В ответе запишите два числа - сначала максимальную сумму, которую может собрать Робот, затем — минимальную.
Задание 18
Решение. Сначала найдём максимальную денежную сумму. Для этого найдём максимальную денежную сумму для каждой ячейки таблицы. Для каждой ячейки нижней строки это будет сумма всех ячеек слева от текущей. Для каждой ячейки левого столбца это будет сумма всех ячеек сверху от текущей. В ячейку A41 запишем формулу =A20.
В ячейку J38 запишем 0, так как в эту ячейку невозможно попасть слева или снизу.
В ячейку B41 запишем формулу =A41+B20 и скопируем ее на диапазон B41:T41.
В ячейку A40 запишем формулу =A41+A19 и скопируем ее на диапазон A40:A22.
Для ячеек E12:E16, H4:H19, J11:J17, M2:M10, R11:R17, T5:T10, поскольку слева от них имеется внутренняя стенка, максимальная денежная сумма вычисляется как сумма текущей ячейки и суммы снизу.
Для ячеек B11:D11, F3:G3, J1:L1, J17:L17, P4:S4, P10:Q10 поскольку снизу от них имеется внутренняя стенка, максимальная денежная сумма вычисляется как сумма текущей ячейки и суммы слева.
Для остальных ячеек будем сравнивать значение ячейки слева и значение ячейки снизу и присваивать текущей ячейке значение суммы той ячейки, в которой значение больше, и текущей ячейки.
В B40 запишем формулу =МАКС(A40+B19;B41+B19) и скопируем эту формулу во все оставшиеся ячейки диапазона B40:T22. Записав формулу =МАКС(D33;G25;L23;Q32;S26;T22) получим значение максимальной денежной суммы — 2662.
Аналогичным образом найдём значение минимальной денежной суммы. Ячейки с внутренними стенками слева или сверху заполняются так же, как при поиске максимальной денежной суммы. В B40 запишем формулу =МИН(A40+B19;B41+B19) и скопируем эту формулу во все оставшиеся ячейки диапазона B40:T22.
В ячейку J38 запишем 10000, так как в эту ячейку невозможно попасть слева или снизу.
Записав формулу =МИН(D33;G25;L23;Q32;S26;T22), получим значение минимальной денежной суммы — 364.
Ответ: 2662364.
Ответ: 2662364