Прямокутна ковзанка
Обмеження: 3 сек., 256 МіБ
Наступного дня Зеник з Марічкою вирішили покататися на ковзанах.
На курорті є прямокутна ковзанка розміру n×mn×m. Кожна з n×mn×m ділянок ковзанки має свій рівень небезпеки dijdij.
Ковзанка дуже велика, тому пара не хоче їздити по всій її площі, а тільки вибрати собі квадрат розміру k×kk×k зі сторонами паралельними до сторін ковзанки і кататися на ньому.
Рівень небезпеки квадрата — це максимальний рівень небезпеки серед усіх ділянок, що йому належать.
Марічка просить вас дізнатися, який мінімальний рівень небезпеки може мати квадрат k×kk×k.
Вхідні дані
У першому рядку задано три цілих числа nn, mm та kk — розміри ковзанки та квадрата. У наступних nn рядках задано по mm цілих чисел dijdij — рівень небезпеки на відповідній ділянці ковзанки.
Вихідні дані
У єдиному рядку виведіть ціле число — мінімальний рівень небезпеки квадрата k×kk×k.
Обмеження
1≤n,m≤15001≤n,m≤1500, 1≤k≤min{n,m}1≤k≤min{n,m},
1≤dij≤1091≤dij≤109.
10 балів: n,m≤100n,m≤100;
10 балів: n,m≤700n,m≤700;
5 балів: без додаткових обмежень.
Приклади
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
3 3 2 2 5 4 4 1 3 3 2 1 | 3 |
Примітки
У прикладі можливі такі способи вибрати квадрат 2×22×2:
2541 з рівнем небезпеки 5,
5413 з рівнем небезпеки 5,
4132 з рівнем небезпеки 4,
1321 з рівнем небезпеки 3.