zoj 2165 dfs

简介: #include<stdio.h>int dir[4][2]= {{-1,0},{1,0},{0,-1},{0,1}};char jk[25];int flag[25][25];int num;void dfs(int x,int y){ int i,j,xx,yy; for(i=0; i<4; i++) for(j=0; j&
#include<stdio.h>
int dir[4][2]= {{-1,0},{1,0},{0,-1},{0,1}};
char jk[25];
int flag[25][25];
int num;
void dfs(int x,int y)
{
    int i,j,xx,yy;
    for(i=0; i<4; i++)
        for(j=0; j<4; j++)
        {
            xx=x+dir[i][0];
            yy=y+dir[i][1];
            if(flag[xx][yy]==0)
            {
                num++;
                flag[xx][yy]=1;
                dfs(xx,yy);
            }
        }
}
int main()
{
   // freopen("input.txt","r",stdin);
    int i,j,x,y,w,h;
    while(scanf("%d %d",&w,&h)!=EOF)
    {
        num=1;
        if(w<=0||h<=0)
            break;
        for (i=0; i<22; ++i)
        {
            for (j=0; j<22; ++j)
            {
                flag[i][j] = 1;
            }
        }
        for(i=1; i<=h; i++)
        {
            scanf("%s",jk);
            for(j=1; j<=w; j++)
            {
                if(jk[j-1]=='.')
                   flag[i][j]=0;
                else if(jk[j-1]=='@')
                {
                    x=i;
                    y=j;
                }
            }
        }
        dfs(x,y);
        printf("%d\n",num);
    }
    return 0;
}

目录
相关文章
|
算法
1091 zoj Knight Moves的BFS算法和DFS
1091 zoj Knight Moves的BFS算法和DFS
70 0
CF708C-Andryusha and Colored Balloons(dfs)
CF708C-Andryusha and Colored Balloons(dfs)
105 0
HDOJ 1081(ZOJ 1074) To The Max(动态规划)
HDOJ 1081(ZOJ 1074) To The Max(动态规划)
86 0
HDOJ 1081(ZOJ 1074) To The Max(动态规划)
|
机器学习/深度学习
POJ 1775 (ZOJ 2358) Sum of Factorials
POJ 1775 (ZOJ 2358) Sum of Factorials
151 0
|
机器学习/深度学习
|
BI 人工智能
zoj 1586 prim
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=586 #include &lt;cstdio&gt; #include &lt;cstring&gt; #define MAX 1000000 int Edge[1010][1010]; int adapter[1010]; int lowcost[1010]
982 0

热门文章

最新文章