hdu 1241Oil Deposits

竞赛的时候一直吧题意错了。。。adjacent相邻的  。。。妈的 英语我最头痛啊啊啊~~~
哎  如果理解了题意 就多对一个了
#include <stdio.h>
#include <string.h>
int n,m,num,visit[105][105],a[10000],q=0;
char map[105][105];
void dfs(int x,int y)
{
    if(x>=m||x<0||y>=n||y<0||visit[x][y]||map[x][y]=='*')
    return ;
    visit[x][y]=1;
    dfs(x+1,y);
    dfs(x-1,y);
    dfs(x,y+1);
    dfs(x,y-1);
    dfs(x-1,y-1);
    dfs(x-1,y+1);
    dfs(x+1,y-1);
    dfs(x+1,y+1);
}
int main()
{
    int count;
    while(scanf("%d %d",&m,&n)!=EOF)
    {
    if(m==0&&n==0)
    break;
    q=0;
    for(int i=0;i<m;i++)
    scanf("%s",map[i]);
    memset(visit,0,sizeof(visit));
    count=0;
	for(int i=0;i<m;i++)
    for(int j=0;j<n;j++)
    {
        if(map[i][j]=='@'&&!visit[i][j])
        dfs(i,j),count++;
    }
    printf("%d\n",count);
    }
    return 0;
}

你可能感兴趣的:(poj,oil,poj1241,1241,Deposits)