P2112: 【入门】污染治理


题目描述

某海域多个区域出现被石油污染的情况。当地的环保部门准备紧急投放环保材料来吸收漂浮在海面上的石油。  为了解目前的污染情况,环保部门派一架无人机对该海域拍摄并绘制了一张n*m大小的地图,地图上标记为”~”的区域表示无污染的海域,标记为”*”的海域表示漂浮着石油的有污染的海域,上下左右四个方向相邻的有污染的海域可以称为是同一片污染海域。  请你编程帮助环保部门计算一下,海面上共有多少片有污染的海域,被污染的总面积有多少,最大的被污染的海域面积有多大? 比如:有如下一张8*10的地图。通过该地图我们发现,有3片被污染的海域,面积依次为:4、9、5,被污染的总面积 = 4 + 5 + 9 = 18;最大的被污染海域的面积为9。 ~*~~~~~~~~ ~**~~***~~ ~*~~~*~*~~ ~~~~****~~ ~~~~~~~~~~ ~~***~~~~~ ~~~**~~~~~ ~~~~~~~~~~

输入

1行有2个整数nm,代表拍摄地图的大小。(3≤n,m100

接下来n行,每行有m个字符代表拍摄到的地图的值。

输出

输出三个整数,用空格隔开,分别代表有几片海域被污染了,被污染的总面积的值,以及最大的被污染海域的面积。

样例输入复制

8 10
~*~~~~~~~~
~**~~***~~
~*~~~*~*~~
~~~~****~~
~~~~~~~~~~
~~***~~~~~
~~~**~~~~~
~~~~~~~~~~

样例输出复制

3 18 9

来源

深搜 

问题信息

时间限制 1.000s
内存限制 128MB
评测方式 Normal Judge