![]()
#include <iostream>
#include<cstdio>
using namespace std;
#define maxn 105
char field[maxn][maxn];
int n,m;
void dfs(int x,int y)
{
field[x][y]='.';//注意要改成.
for(int dx=-1;dx<=1;dx++)
for(int dy=-1;dy<=1;dy++) //八连通,八个方向都要dfs
{
int xx=x+dx,yy=y+dy;
if(xx>=0&&xx<n&&yy<m&&yy>=0&&field[xx][yy]=='W') dfs(xx,yy);
}
}
void solve()
{
int ans=0;
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
if(field[i][j]=='W')
{
dfs(i,j);
ans++;//dfs几次就代表有几个水洼
}
cout<<ans;
}
int main()
{
cin>>n>>m;
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
cin>>field[i][j];
solve();
return 0;
}