Олимпиадный тренинг

Задача . Максимальная сумма


Сегодня на страницах газеты <<Математический досуг>> была опубликована необычная математическая головоломка. Одна из страниц газеты полностью занята прямоугольной таблицей, состоящей из m строк и n столбцов. В каждой ячейке таблицы записано некоторое целое число.

Для решения головоломки требуется найти такой невырожденный прямоугольник с вершинами в центрах ячеек таблицы, и сторонами, параллельными сторонам таблицы, чтобы сумма чисел, записанных в ячейках на границе получившегося прямоугольника, была максимальна.

Безуспешно потратив несколько часов на решение головоломки, Саша решил написать программу, которая сделала бы это за него. Но и тут его постигла неудача. Теперь ему ничего не остается, как обратиться за помощью к вам.

Напишите программу, которая по заданной таблице найдет искомый прямоугольник.

Формат входных данных
На первой строке записаны два целых числа m и n (2m,n300). Далее следует описание таблицы — m строк, каждая из которых содержит по n целых чисел ai,j (104ai,j104).

Формат выходных данных
На первой строке выведите целое число s — максимальную сумму чисел на границе искомого прямоугольника. На второй строке выведите четыре натуральных числа: x1,y1,x2,y2 — координаты левой верхней и правой нижней ячейки выбранного прямоугольника, соответственно (здесь x — номер строки, а y — номер столбца, строки нумеруются сверху вниз, начиная с единицы, столбцы нумеруются слева направо, начиная с единицы). Если оптимальных решений несколько, выведите любое.


Примеры
Входные данныеВыходные данные
1 2 3
1 1 1
1 1 1
6
1 1 2 3
2 5 4
9 -2 -1 3
-10 -5 1 -4
1 -1 2 -2
3 0 0 -1
2 2 -1 2
8
3 1 5 3

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w642
Комментарий учителя