hdu 1241

来源:互联网 发布:龙卷风收音机软件 编辑:程序博客网 时间:2024/06/15 13:38
////  main.cpp//  dfs-bfs搜索////  Created by liuzhe on 16/8/10.//  Copyright © 2016年 my_code. All rights reserved.//#include <iostream>#include <algorithm>#include <cstdio>#include <cstring>using namespace std;//Oil Depositschar map[101][101];//存图int dir[8][2]={    {-1,-1},    {-1,0},    {-1,1},    {0,-1},    {0,1},    {1,-1},    {1,0},    {1,1}};int vis[101][101];int n,m,ans;void dfs(int i,int j){    vis[i][j]=1;    for(int k=0;k<8;++k)    {        int x=i+dir[k][0];        int y=j+dir[k][1];        if(x>=0&&x<n&&y>=0&&y<m&&!vis[x][y]&&map[x][y]=='@')//判断是否越界            dfs(x,y);    }}int main(){    while(cin>>n>>m)    {        if(!n&&!m)            break;        for(int i=0;i<n;i++)            scanf("%s",&map[i]);        ans=0;        memset(vis,0,sizeof(vis));        for(int i=0;i<n;i++)            for(int j=0;j<m;++j)                if(!vis[i][j]&&map[i][j]=='@')                {                    ans++;                    dfs(i,j);                }        printf("%d\n",ans);    }        return 0;}

0 0