hdu1241

来源:互联网 发布:九一三事件知乎 编辑:程序博客网 时间:2024/05/17 22:12

不多说,搜索的水题。

题目:要求你找有几摊油泊,‘@’表示油泊,油泊范围包括‘@’及周围八格内。

#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>using namespace std;const int maxn=105;int n,m;int x1,y1;char map[maxn][maxn];void bfs(int a,int b){    if(a<0||a>=n||b<0||b>=m)    return ;    if(map[a][b]=='*')    return ;    if(map[a][b]!='*')    {        map[a][b]='*';        for(int i=-1;i<=1;i++)        {            for(int j=-1;j<=1;j++)            bfs(a+i,b+j);        }    }}int main(){    while(~scanf("%d%d",&n,&m),n&&m)    {        int pt=0;        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]=='@')                {                    bfs(i,j);                    pt++;                }            }        printf("%d\n",pt);    }    return 0;}


0 0