比赛 hhh 评测结果 WWWWWWWWWW
题目名称 最大的湖 最终得分 0
用户昵称 雾茗 运行时间 0.014 s
代码语言 C++ 内存使用 0.62 MiB
提交时间 2018-07-31 11:20:56
显示代码纯文本
#include<cstdio>
#include<iostream>
#include<cmath>
#include<cstring>
using namespace std;
int f[200][200]={0};
int vis[200][200]={0};
int x,y;
int maxn=0;
int dfs(int x,int y){
	if(x==0||y==0){
		return 0;
	}
	vis[x][y]=1;
	if(f[x][y]!=2||vis[x][y]==1){
		return 0;
	}
	else{
		if(vis[x][y]==0){
			maxn++;
		return dfs(x-1,y),dfs(x+1,y),dfs(x,y+1),dfs(x,y-1);
		}
	}
}
int main()
{
    freopen("lake.in","r",stdin);
    freopen("lake.out","w",stdout);
	int n,m,k;
	cin>>n>>m>>k;
	for(int i=1;i<=n;++i){
		for(int j=1;j<=m;++j){
			f[i][j]=1;
		}
	}
	for(int i=1;i<=k;++i){
		cin>>x>>y;
		f[x][y]=2;
	}
	int ans=0;
	for(int i=1;i<=n;++i){
		for(int j=1;j<=m;++j){
			dfs(i,j);
			if(maxn>ans){
				ans=maxn;
			}
		}
	}
	cout<<ans;
    return 0;
}
//床单,被子,枕头,有柜子要带锁,盆子,牙刷,毛巾,拖鞋
//吃的零食(比较适合你),水壶,钱/银行卡,简单的药品,你的私人用品