Задание 18 ЕГЭ по информатике · 8A7C55

ВысокаяКЭС 4.2
Задание выполняется с использованием прилагаемых
файлов.
Квадрат разлинован на N × N клеток (1 < N < 30). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю нижнюю. Квадрат ограничен внешними стенами. Между соседними клетками квадрата также могут быть внутренние стены. Сквозь стену Робот пройти не может.
Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клеткам маршрута Робота.
В «угловых» клетках поля – тех, которые справа и снизу ограничены стенами, Робот не может продолжать движение, поэтому накопленная сумма считается итоговой. Таких конечных клеток на поле может быть несколько, включая правую нижнюю клетку поля. При разных запусках итоговые накопленные суммы могут различаться.
Определите максимальную и минимальную денежные суммы, среди всех возможных итоговых сумм, которые может собрать Робот, пройдя из левой верхней клетки в конечную клетку маршрута. В ответе укажите два числа – сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N × N, каждая ячейка которой соответствует клетке квадрата. Внутренние и внешние стены обозначены утолщёнными линиями.
Пример входных данных
1884
10113
13122
2356
301_18_8A7C55.xlsx

Показать ответ
1996 575
Подсказки (3)
  1. Для каждой клетки определите максимальную и минимальную сумму, с которой Робот может в неё попасть.
  2. При переходе в клетку учитывайте только тех соседей сверху и слева, с которыми нет стены: для максимума выбирайте больший результат, для минимума — меньший.
  3. Инициализируйте стартовую клетку её стоимостью. В каждой конечной клетке сравните найденные максимальную и минимальную суммы; среди всех конечных клеток выберите глобальные максимум и минимум.
Решение
1. Построим две таблицы динамического программирования: max[i][j] — максимальная сумма при достижении клетки (i,j), а min[i][j] — минимальная сумма.

2. Для каждой клетки, кроме стартовой, рассмотрим допустимые переходы из клетки сверху и из клетки слева. Переход разрешён только при отсутствии соответствующей стены.

3. Если C[i][j] — номинал монеты в текущей клетке, то значение для максимума равно максимуму из допустимых предыдущих значений плюс C[i][j], а значение для минимума — минимуму из них плюс C[i][j].

4. Для всех клеток, ограниченных стенами справа и снизу, соберём значения max[i][j] и min[i][j]. Максимальный ответ — наибольшее значение среди первых, минимальный — наименьшее среди вторых.
Частые ошибки
  • Не учитывать монету в начальной или конечной клетке.
  • Разрешать переход через внутреннюю стену.
  • Рассматривать только правую нижнюю клетку как конечную.
  • Искать максимум и минимум только по одному маршруту.

Источник: Открытый банк ФИПИ · openfipi.devinf.ru

Похожие задания

18вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю…Наибольшая и наименьшая сумма по пути · 776E3618вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз –в соседнюю…Наибольшая и наименьшая сумма по пути · 779E0A18вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз –в соседнюю…Наибольшая и наименьшая сумма по пути · 77DB4618вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз –в соседнюю…Наибольшая и наименьшая сумма по пути · 79404A18вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю…Наибольшая и наименьшая сумма по пути · 94107F18вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю…Наибольшая и наименьшая сумма по пути · 9E5F7718вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю…Наибольшая и наименьшая сумма по пути · A12AAD18вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю…Наибольшая и наименьшая сумма по пути · AE45C9

Нужен репетитор по информатике?

Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.

Репетиторы по информатике

Подбор репетитора

Напишите, что нужно, — команда Precettore подберёт репетитора и свяжется с вами.

Готовьтесь к ЕГЭ по информатике в Precettore

Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.