标签:like desc put man include min square for ide
Description
Input
Output
Sample Input
10 12 W........WW. .WWW.....WWW ....WW...WW. .........WW. .........W.. ..W......W.. .W.W.....WW. W.W.W.....W. .W.W......W. ..W.......W.
Sample Output
3
#include <iostream>
using namespace std;
char Map[110][110];
bool vis[110][110];
int dir[8][2] = {{1,0},{1,1},{0,1},{1,-1},{-1,0},{-1,-1},{0,-1},{-1,1}};
int dx, dy;
int n, m;
int dfs(int x, int y)
{
if(x < 0 || x >= n || y < 0 || y >= m)
return 0;
for(int i = 0; i < 8; ++ i)
{
dx = x + dir[i][0];
dy = y + dir[i][1];
if(Map[dx][dy] == ‘W‘ && !vis[dx][dy])
{
vis[dx][dy] = true;
dfs(dx, dy);
}
}
}
int main()
{
int result = 0;
cin >> n >> m;
for(int i = 0; i < n; ++ i)
{
cin >> Map[i];
}
for(int i = 0; i < n; ++ i)
{
for(int j = 0; j < m; ++ j)
{
if(Map[i][j] == ‘W‘ && !vis[i][j])
{
vis[i][j] = true;
dfs(i, j);
result ++;
}
}
}
cout << result << endl;
return 0;
}
标签:like desc put man include min square for ide
原文地址:https://www.cnblogs.com/mjn1/p/11643416.html