Робот и монеты
Квадрат разлинован на N × N клеток (1 < N < 30). Исполнитель Робот перемещается по клеткам, за один ход выполняя одну из двух команд: вправо или вниз (вправо — в соседнюю правую клетку, вниз — в соседнюю нижнюю). Квадрат ограничен внешними стенами, между соседними клетками могут быть внутренние стены. Сквозь стену Робот пройти не может. Перед каждым запуском Робота в каждой клетке лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой, это относится и к начальной, и к конечной клеткам маршрута. В «угловых» клетках поля (там, где справа и снизу ограничены стенами) Робот продолжать движение не может, поэтому накопленная сумма считается итоговой. Таких конечных клеток может быть несколько, в том числе правая нижняя. При разных запусках итоговые суммы могут быть разными. Определите максимальную и минимальную суммы, которые может собрать Робот, пройдя из левой верхней клетки в конечную клетку маршрута. В ответе запишите два числа через пробел: сначала максимальную сумму, затем минимальную. Исходные данные лежат в электронной таблице N × N: каждая ячейка соответствует клетке квадрата, внутренние и внешние стены нарисованы утолщёнными границами ячеек.
Источник: ФИПИ (Демо), № 31515
Скачать файл: task_31515_A.ods. Решай в Excel или LibreOffice.
Показать разбор
- Открой файл task_31515_A.ods. Сделай копию таблицы на том же листе, ниже или правее: в копии будут формулы.
- Старт в левой верхней клетке, там формула равна только её монете. По первой строке пиши =монета + слева, по первому столбцу =монета + сверху. Монету всегда бери из исходной таблицы, а соседей из таблицы с формулами.
- В остальные клетки протяни формулу =монета + МАКС(слева; сверху).
- Скопируй исходную таблицу и вставь на таблицу с формулами через «Специальную вставку», пункт «Только форматы»: Ctrl+Shift+V в LibreOffice, Ctrl+Alt+V в Excel. Теперь стены видны прямо на формулах.
- Пройди по стенам. Толстая линия может быть нарисована с любой стороны границы. Если стена закрывает один путь, оставь только второй: =монета + слева или =монета + сверху. Если закрыты оба пути, сотри формулу. Такие клетки покрась цветом.
- Найди конечные клетки: у них стена и справа, и снизу. В этой таблице их четыре, смотри все. Запиши наибольшее значение среди них: это максимум.
- Через Ctrl+H замени МАКС на МИН, клетки со стенами не изменятся. В тех же конечных клетках выбери наименьшее значение: это минимум.
- В ответ запиши через пробел сначала максимум, потом минимум, как просит условие.