import sys

N, M = map(int, input().split())
visited = []

for _ in range(N):
    row = input()
    
    visit_row = [False if s == 'W' else True for s in row]
    visited.append(visit_row)

output = 0


def dfs(i, j):
    if visited[i][j]:
        return 
    else:
        visited[i][j] = True
        # up, up_left, up_right, down, down_left, down_right, left, right = [0] * 8
        if i > 0:
            dfs(i - 1, j)
            if j > 0:
                dfs(i - 1, j - 1)
            if j < M - 1:
                dfs(i - 1, j + 1)
        
        if i < N - 1:
            dfs(i + 1, j)
            if j > 0:
                dfs(i + 1, j - 1)
            if j < M - 1:
                dfs(i + 1, j + 1)
        
        if j > 0:
            dfs(i, j - 1)
        
        if j < M - 1:
            dfs(i, j + 1)

for i in range(N):
    for j in range(M):
        if not visited[i][j]:
            dfs(i, j)
            output += 1

print(output)