Написать программу, решающую следующую задачу. Входные данные находятся в текстовом файле **input.txt**. В первой строке файла указаны через пробел размеры массива, каждый из которых не превосходит 20. В последующих строках перечислены элементы массива - целые числа. Результатом работы программы должны быть оптимальное значение целевой функции и путь, при котором оно достигается.  
Для указания пути вывести массив, отметив элементы пути либо другим цветом, либо некоторым другим образом.  
**Вариант 17 (5):** Дан двумерный числовой массив размером $N1*N2$, в котором имеются отрицательные числа. Найти такой путь от нижней строки массива к верхней, чтобы сумма чисел по данному пути была максимальной. Из каждой клетки массива допустимо двигаться либо через одну клетку вверх, либо на одну клетку влево-вверх или вправо-вверх.