#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
****************************************************************/