小水题
注:
每次只读入一位
“%1d”
//P1451 求细胞数量
//2017.3.27
#include <iostream>
#include <cstdio>
using namespace std;
int m, n, ans, map[102][102], book[102][102];
void dfs(int i, int j){
if (book[i][j]) return ;
book[i][j] = 1;
if (map[i][j] == 0) return ;
// cout << " " << i << " " << j << endl;
dfs(i + 1, j);
dfs(i - 1, j);
dfs(i, j + 1);
dfs(i, j - 1);
}
int main(){
scanf("%d%d", &m, &n);
for (int i = 1; i <= m; i++)
for (int j = 1; j <= n; j++)
scanf("%1d", &map[i][j]);
ans = 0;
for (int i = 1; i <= m; i++)
for (int j = 1; j <= n; j++){
if (book[i][j]) continue;
book[i][j] = 1;
if (map[i][j] == 0) continue;
// cout << i << " " << j << endl;
ans++;
book[i][j] = 0;
dfs(i, j);
}
cout << ans;
return 0;
}