Задание №18 ЕГЭ Информатика с ответом и решением
Ответ: 1496782
Условие
Квадрат разлинован на N×N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Откройте файл. Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответ запишите два числа друг за другом без разделительных знаков — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N×N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
| 1 | 8 | 8 | 4 |
|---|---|---|---|
| 10 | 1 | 1 | 3 |
| 1 | 3 | 12 | 2 |
| 2 | 3 | 5 | 6 |
Для указанных входных данных ответом должна быть пара чисел 41 и 22.
Подсказки — как подойти к решению
- Данные лежат в файле в виде таблицы: удобнее всего считать их программой в список списков, чтобы обращаться к клетке по двум индексам.
- Поскольку двигаться можно только вправо и вниз, сумма по маршруту в клетке вычисляется из максимума (или минимума) значений верхнего и левого соседей плюс монета самой клетки.
- Заполняй таблицу построчно, начиная с первой строки и первого столбца, и выполни два прохода: для максимальной и для минимальной суммы; в ответе сначала максимальная, потом минимальная.
Решение
Для поиска максимального значения будем работать с областью А13:J22, так как при расчетах будем использовать исходные значения монет в каждой клетке. В ячейку А13 напишем значение =A1. Для каждой ячейки левого столбца это будет сумма всех ячеек выше от текущей. Внесем в ячейку А14 формулу =A2+A13 и скопируем за маркер вниз до ячейки A22. Далее в ячейку B13 вставим формулу =B1+МАКС(A13;B12) и скопируем за маркер в ячейки B13:J22. Значение в ячейке J22 будет максимальной денежной суммой, которую сможет собрать Робот, — 1496.
Аналогичным образом найдём значение минимальной денежной суммы. Вместо функции МАКС в диапазоне ячеек B13:J22 напишем функцию МИН. В таком случае значение в ячейке J22 будет минимальной денежной суммой, которую сможет собрать Робот, — 782.
Ответ: 1496782.
Типичные ошибки
- Суммы записаны в обратном порядке: сначала идёт максимальная, затем минимальная.
- Две суммы сложены вместо того, чтобы записать их подряд без разделительных знаков.
В тренажёре: подсказки по шагам, разбор твоей ошибки ИИ-репетитором (он не даёт готовый ответ), повторение ошибок по интервалам и общий прогресс. Все задания №18 по информатике