某海域多个区域出现被石油污染的情况。当地的环保部门准备紧急投放环保材料来吸收漂浮在海面上的石油。
为了解目前的污染情况,环保部门派一架无人机对该海域拍摄并绘制了一张n*m大小的地图,地图上标记为”~”的区域表示无污染的海域,标记为”*”的海域表示漂浮着石油的有污染的海域,上下左右四个方向相邻的有污染的海域可以称为是同一片污染海域。
请你编程帮助环保部门计算一下,海面上共有多少片有污染的海域,被污染的总面积有多少,最大的被污染的海域面积有多大? 比如:有如下一张8*10的地图。通过该地图我们发现,有3片被污染的海域,面积依次为:4、9、5,被污染的总面积 = 4 + 5 + 9 = 18;最大的被污染海域的面积为9。
~*~~~~~~~~
~**~~***~~
~*~~~*~*~~
~~~~****~~
~~~~~~~~~~
~~***~~~~~
~~~**~~~~~
~~~~~~~~~~
第1行有2个整数n和m,代表拍摄地图的大小。(3≤n,m≤100)
接下来n行,每行有m个字符代表拍摄到的地图的值。
输出三个整数,用空格隔开,分别代表有几片海域被污染了,被污染的总面积的值,以及最大的被污染海域的面积。
8 10 ~*~~~~~~~~ ~**~~***~~ ~*~~~*~*~~ ~~~~****~~ ~~~~~~~~~~ ~~***~~~~~ ~~~**~~~~~ ~~~~~~~~~~
3 18 9
深搜