#4348. 湖泊的大小(lake size)

湖泊的大小(lake size)

在一个 $n \times m$ 的地图上,每个格子要么是陆地(.),要么是水域(W)。 我们定义 湖泊 为一片由水域格子组成的、通过上下左右相邻连接在一起的区域。

请你计算地图中湖泊的个数,以及每个湖泊的面积(即格子数),并按面积从小到大输出。


输入格式

  • 第一行两个整数 $n, m$($1 \le n, m \le 1000$)
  • 接下来 $n$ 行,每行一个长度为 $m$ 的字符串,表示地图。

输出格式

  • 第一行一个整数 $k$,表示湖泊个数。
  • 第二行 $k$ 个整数,按升序表示每个湖泊的面积。

样例输入

5 5
.W...
.WW..
..W..
..W..
.....

样例输出

1
5

样例解释

这张地图只有一个湖泊,它的面积为 $5$(即 5 个 W 格子相连)。