Пример 1
Квадрат разлинован на N × N клеток. В каждой клетке лежит монета достоинством от 1 до 100. Робот стоит в левой верхней клетке и за один ход может переместиться на одну клетку вправо или вниз, забирая монету из каждой клетки, где побывал (в том числе из начальной и конечной). Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя в правую нижнюю клетку. Числа в таблице — достоинства монет.
Показать решение
1. Идея — динамика: для каждой клетки считаем лучшую сумму, с которой Робот может в неё прийти. Прийти можно только сверху или слева.
2. Рядом с исходной таблицей (пусть она в A1:J10) строим такую же по размеру, начиная с L1.
3. Левая верхняя клетка: =A1.
4. Первая строка — прийти можно только слева: в M1 =L1+B1, тянем вправо.
5. Первый столбец — только сверху: в L2 =L1+A2, тянем вниз.
6. Остальные клетки: в M2 =МАКС(M1;L2)+B2, тянем на весь квадрат. В правой нижней клетке — максимальная сумма.
7. Для минимума копируем вспомогательную таблицу и заменяем МАКС на МИН.
Ответ зависит от файла с экзамена, поэтому готовых чисел здесь нет.
