eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Пиратский сундук

Пиратский сундук

Пират Джек устал от битв, мародерства, воровства и угнетения всех и вся в открытом море. Он решил уйти на пенсию, и даже нашел идеальный необитаемый островок в океане, на котором он достойно проведет остаток жизни, если у него, конечно, не закончатся деньги. Сейчас у него много золотых монет, которые он хочет сложить в сундук (он же в конце концов пират!). Джек может построить сундук в форме прямоугольного параллелепипеда с целочисленными сторонами и не превышающими заданный размерами дна сундука. Осталось лишь найти, куда спрятать сундук с сокровищами. Джек решил затопить сундук в тенистом пруду. Поверхность пруда представляет собой прямоугольник с заданными сторонами, пруд со всех сторон окружен вертикальными каменными берегами. Джек исследовал дно пруда и знает про каждый квадрат \textbf{1}х\textbf{1} пруда (в декартовой системе координат) глубину пруда в этом месте. Когда Джек утопит сундук, последний утонет на максимально возможную глубину до тех пор, пока не коснется дна хотя бы одним квадратом. Из-за утопленного сундука уровень воды в пруду поднимется. Берега пруда достаточно высоки, чтобы вода никогда не вылилась за его границы. Разумеется, так как сундук нужно спрятать, он должен полностью находиться ниже уровня воды в пруду. Ваша задача --- найти максимальный объем сундука, который можно спрятать в пруду. На рисунке слева показан пруд без сундука, по центру --- пруд в котором находится сундук объема \textbf{3}, справа --- сундук объема \textbf{4} (максимально возможного) в пруду. Обратите внимание, что если бы сундук с центрального рисунка был сделан на единицу большей высоты, то его верх был бы виден ровно на поверхности пруда. \includegraphics{https://static.e-olymp.com/content/15/15063c2e6669582a61f2c0534bc97aa50a66aaab.jpg} \textit{\textbf{Рисунок}}: Иллюстрация для входного теста \textbf{1}. \InputFile Входные данные содержат один тест. Тест начинается со строки, содержащей четыре целых числа \textbf{a}, \textbf{b}, \textbf{m}, \textbf{n }(\textbf{1 }≤ \textbf{a}, \textbf{b}, \textbf{m}, \textbf{n} ≤ \textbf{500}). Размеры поверхности пруда - \textbf{m} × \textbf{n}, максимальный размер дна сундука - \textbf{a} × \textbf{b}. Кроме того, \textbf{a} и \textbf{b} достаточно малы, чтобы сундук никогда не покрыл весь пруд полностью. Каждая из оставшихся \textbf{m} входных строк содержит \textbf{n} чисел \textbf{d_\{i,j\}}, описывающих глубину пруда в квадрате с координатами (\textbf{i},\textbf{ j}), где \textbf{0} ≤ \textbf{d_\{i,j\}} ≤ \textbf{10^9} для любых \textbf{1} ≤ \textbf{i} ≤ \textbf{m}, \textbf{1} ≤ \textbf{j} ≤ \textbf{n}. \OutputFile Выведите максимальный объем сундука с целочисленными сторонами, который можно спрятать в пруду под поверхностью воды, причем одно из измерений дна должно не превышать \textbf{a}, а другое - не превышать \textbf{b}. Если ни один сундук нельзя спрятать под водой, то выведите \textbf{0}.
Лимит времени 15 секунд
Лимит использования памяти 256 MiB
Входные данные #1
3 1 2 3
2 1 1
2 2 1
Выходные данные #1
4
Источник ACM-ICPC World Finals 2013