import java.util.Scanner;
public class Main{
static int[][]dirs={{-1,0},{1,0},{0,1},{0,-1},{1,1},{1,-1},{-1,1},{-1,-1}};
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int row=sc.nextInt();
int col=sc.nextInt();
char[][]cs=new char[row][col];
for (int i = 0; i < row; i++) {
cs[i]=sc.next().toCharArray();
}
int cnt=0;
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
if(cs[i][j]=='W'){
dfs(cs,i,j);
cnt++;
}
}
}
System.out.println(cnt);
sc.close();
}
static void dfs(char[][]cs,int x,int y){
cs[x][y]='.';
int r=cs.length,c=cs[0].length;
for (int[] d : dirs) {
int nx=d[0]+x;
int ny=d[1]+y;
if(nx>=0&&ny>=0&&nx<r&&ny<c&&cs[nx][ny]=='W'){
dfs(cs, nx, ny);
}
}
}
}