#include <bits/stdc++.h>
using namespace std;
const int N=110;
int m,n;
char ma[N][N];
int res;
int d[8][2]{{1,1},{-1,1},{-1,-1},{1,-1},{1,0},{-1,0},{0,-1},{0,1}};
queue < pair < int,int > > pq;
void bfs(int xx,int yy)
{
pq.push(make_pair(xx,yy));
while(!pq.empty())
{
int xxx=pq.front().first,yyy=pq.front().second;
pq.pop();
for(int i=0;i<8;i++)
{
int xxxx=xxx+d[i][0],yyyy=yyy+d[i][1];
if(xxxx>0&&yyyy>0&&xxxx<m+1&&yyyy<n+1&&ma[xxxx][yyyy]=='W')
{
ma[xxxx][yyyy]=='.';
}
}
}
}
int main()
{
cin>>m>>n;
for(int i=1;i<=m;i++)
{
string s;
cin>>s;
for(int j=0;j<n;j++)
{
ma[i][j+1]=s[j];
}
}
for(int i=1;i<=m;i++)
{
for(int j=1;j<=n;j++)
{
if(ma[i][j]=='W')
{
ma[i][j]='.';
bfs(i,j);
res++;
}
}
}
cout<<res;
return 0;
}