2061: [蓝桥杯2022初赛] 最大子矩阵

内存限制:256 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:295 通过:28

题目描述

小明有一个大小为N×M的矩阵,可以理解为一个N行M列的二维数组。
我们定义一个矩阵m 的稳定度f(m) 为f(m)=max(m)-min(m)。
其中max(m)表示矩阵m中的最大值,min(m) 表示矩阵m 中的最小值。
现在小明想要从这个矩阵中找到一个稳定度不大于limit 的子矩阵;
同时他还希望这个子矩阵的面积越大越好(面积可以理解为矩阵中元素个数)。
子矩阵定义如下:
从原矩阵中选择一组连续的行和一组连续的列,这些行列交点上的元素组成的矩阵即为一个子矩阵。

输入格式

第一行输入两个整数N,M,表示矩阵的大小。
接下来N 行,每行输入M 个整数,表示这个矩阵。
最后一行输入一个整数limit,表示限制。


对于所有评测用例,0≤矩阵元素值, limit≤10^5。

输出格式

输出一个整数,分别表示小明选择的子矩阵的最大面积。

输入样例 复制

3 4
2 0 7 9
0 6 9 7
8 4 6 4
8

输出样例 复制

6

数据范围与提示

满足稳定度不大于8 的且面积最大的子矩阵总共有三个,他们的面积都是6(粗体表示子矩阵元素):
2 0 7 9
0 6 9 7
8 4 6 4

2 0 7 9
0 6 9 7
8 4 6 4

2 0 7 9
0 6 9 7
8 4 6 4