其他分享
首页 > 其他分享> > P1596

P1596

作者:互联网

DFS(深度优先搜索)

#include<stdio.h>
#include<stdlib.h>
char map[107][207];
int result=0,m,n;
void dfs(int x,int y)
{
    map[x][y]='.';//搜索过的标记为.避免重复搜索
    int x1,y1;
    //八个方向的搜索
    for(int i=-1;i<=1;i++)
        for(int j=-1;j<=1;j++)
        {
            x1=x+i;
            y1=y+j;
            if(x1>=0&&x1<=n&&y1>=0&&y1<=m&&map[x1][y1]=='W')
            {
                dfs(x1,y1);
            }
        }
    return;
}
int main()
{
    scanf("%d %d",&n,&m);
    for(int i=0;i<=n;i++)
    scanf("%s",map[i]);//细节
    for(int i=0;i<n;i++)
        for(int j=0;j<m;j++)
        if(map[i][j]=='W')
        {
            dfs(i,j);
            result++;
        }
    printf("%d",result);
    return 0;
}

 

标签:map,P1596,int,搜索,&&,y1,include
来源: https://www.cnblogs.com/gyq1314520/p/14422571.html