您的位置:首页 > 其它

POJ 3620 Avoid The Lakes(DFS深度优先搜索)

2010-05-02 02:54 483 查看
//深度优先搜索 POJ上最水的深搜
#include<iostream>
using namespace std;
int y,x,n,r,c,ans = 0,_max = -1;
int map[102][102];
bool vis[102][102];
void dfs(int y,int x)
{
if(vis[y][x] == 1 || map[y][x] == 0)	return;
vis[y][x] = 1;
ans++;
dfs(y-1,x);
dfs(y,x-1);	    	  dfs(y,x+1);
dfs(y+1,x);
}

int main()
{
memset(map,0,sizeof(map));
scanf("%d%d%d",&y,&x,&n);
for(int i = 0;i < n;++i)
{
scanf("%d%d",&r,&c);
map[r][c] = 1;
}
for(int i = 1;i <= y;++i)
for(int j = 1;j <= y;++j)
{
dfs(i,j);
if(ans > _max)
_max = ans;
ans = 0;
}
printf("%d/n",_max);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: