#P2273. *【二分】矩阵尽量平均分块[USACO11MAR] Brownie Slicing G

*【二分】矩阵尽量平均分块[USACO11MAR] Brownie Slicing G

Description

# P3017 [USACO11MAR] Brownie Slicing G

题目描述

给出 R×CR×C 的矩阵 ai,ja_{i,j}

现需要把矩阵分成 A×BA×B 块 。

先水平地切 A1A−1 刀(只能切沿整数坐标切)来把划分成 AA 块。

然后再把剩下来的每一块独立地切 B1B−1 刀,也只能切沿整数坐标切。

目标是: 最小的一块的元素和 SminS_{min} 尽量大。

例如,考虑一个 5×4 的矩阵如下图所示:

1 2 2 1
3 1 1 1
2 0 1 3
1 1 1 1
1 1 1 1

若 A=4,B=2,则可以这样切:

1 2 | 2 1
---------
3 | 1 1 1
---------
2 0 1 | 3
---------
1 1 | 1 1
1 1 | 1 1

这样,至少能获得 SminS_{min} 的最大值为 3 。

输入格式

第一行给出四个整数 R C A B (1R,C500,1AR,1BC)R \ C \ A \ B \ (1≤R,C≤500,1≤A≤R,1≤B≤C)

下来给出R行C列的矩阵ai,j(ai,j40000)a_{i,j}(a_{i,j} \le 40000)

输出格式

输出 SminS_{min} 的最大值。

输入输出样例 #1

输入 #1

5 4 4 2 
1 2 2 1 
3 1 1 1 
2 0 1 3 
1 1 1 1 
1 1 1 1

输出 #1

3