任务文本:
假设有一天你发现自己在一个矩形岛上。
这个岛的景观可以用一个MxN整数矩阵来描述,每个元素都指定了该岛对应区域的海拔高度。
例如,这是一个 3x3 的小岛:
4 5 4
3 1 5
5 4 1
在雨季,岛上完全被水淹没,低地积水。我们将考虑这样一个岛屿区域的低地,其单元格与高度较大的单元格相邻。在这种情况下,不考虑对角线邻居,海平面为0。在上面的例子中,岛上只有一个低地——这是一个在中间的一个值为1的单元格岛(它与高度为 3、5、5 和 4 的单元格接壤)。
因此,下雨后,岛细胞的高度会发生变化,变为:
4 5 4
3 3 5
5 4 1
我们看到在这个例子中,低地的高度从 1 变为 3,之后水开始溢出到相邻的单元格,然后流入大海。岛上累积的水总量为 2 个立方细胞。
这是一个更复杂的例子:
5 3 4 5
6 2 1 4
3 1 1 4
8 5 4 3
雨后,岛上的地图采用以下形式:
5 3 4 5
6 3 3 4
3 3 3 4
8 5 4 3
在这样一个小岛上,雨后积水的总量高达7立方格!
您的程序必须是以下模板之一。
函数的输入是一个数组数组,输出预期是 int - 每个输入示例的雨季后岛上累积的水总量的值限制:岛屿的大小N 和 M 是 [1, 50] 范围内的整数,取值范围 [1, 1000]。以下是输入数据的示例:
4 5 4
3 1 5
5 4 1
5 3 4 5
6 2 1 4
3 1 1 4
8 5 4 3
2 2 2
2 1 2
2 1 2
2 1 2
对于以上数据,程序函数的结果应该如下:
2
7
0
