#include<bits/stdc++.h>
using namespace std;
char a[101][101];
bool f[101][101];//判断是否是细胞 
int fx[4]={0,1,0,-1}; //[0,1],[1,0],[0,-1],[-1,0]
int fy[4]={1,0,-1,0}; 
int n,m,k;//k是细胞数 
void dfs(int x,int y){
    a[x][y]='0';
    for(int i=1;i<=4;i++){
        int xx=x+fx[i-1],yy=y+fy[i-1];
        if(a[xx][yy]!='0'&&xx>=1&&xx<=n&&yy>=1&&yy<=m) dfs(xx,yy);
    }
}
//   0234500067
//   1034560500
//   2045600671
//   0000000089
int main() {
    cin>>n>>m;
    for(int i = 1;i <= n;i++){
        for(int j = 1;j <= m;j++){
            cin>>a[i][j];
        }
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            if(a[i][j]!='0'&&f[i][j]==false){
                k++;//细胞数+1 
                dfs(i,j);
            }
        }
    }
    cout<<k;
}
/**************************************************************
	Problem: 1907
	User: wangyichen
	Language: C++
	Result: Accepted
	Time:15 ms
	Memory:2340 kb
****************************************************************/