func_code_string: #include <bits/stdc++.h>   using namespace std;   const int maxn = 110;   const int dx[4] = {0, 0, 1, -1};   const int dy[4] = {1, -1, 0, 0};   int n, m, ret;   char G[maxn][maxn];   bool ok(int x, int y) { return x >= 0 && y >= 0 && x < n && y < m; }   void dfs(int x, int y) {     if (G[x][y] ==  . ) return;     G[x][y] =  . ;     for (int i = 0; i < (4); i++) {       int tx = x + dx[i];       int ty = y + dy[i];       if (ok(tx, ty) && G[tx][ty] ==  B ) {         dfs(tx, ty);       }     }   }   signed main() {     while (~scanf( %d , &n) && ~scanf( %d , &m)) {       memset((G), 0, sizeof(G));       ret = 0;       for (int i = 0; i < (n); i++) scanf( %s , G[i]);       for (int i = 0; i < (n); i++) {         for (int j = 0; j < (m); j++) {           if (G[i][j] ==  B ) {             dfs(i, j);             ret++;           }         }       }       printf( %d n , ret);     }     return 0;   }   