比赛 搜索题... 评测结果 AAAAAAAAAA
题目名称 最大的湖 最终得分 100
用户昵称 Ezoi_XY 运行时间 0.005 s
代码语言 C++ 内存使用 0.27 MiB
提交时间 2014-11-04 19:10:19
显示代码纯文本
#include<cstdio>
using namespace std;
const int dx[] = {1, -1, 0, 0}, dy[] = {0, 0, 1, -1};
bool mp[105][105];
int n, m, ans, now;
void ff(int x, int y){
	mp[x][y] = false; ++now;
	for (int i(0); i < 4; ++i) if (mp[x + dx[i]][y + dy[i]]) ff(x + dx[i], y + dy[i]);
}
int main(){
	freopen("lake.in", "r", stdin);
	freopen("lake.out", "w", stdout);
	int k, i, j;
	scanf("%d%d%d", &n, &m, &k);
	while (k--){
		scanf("%d%d", &i, &j);
		mp[i][j] = true;
	}
	for (i = 1; i <= n; ++i)
		for (j = 1; j <= m; ++j){
			now = 0;
			if (mp[i][j]) ff(i, j);
			if (ans < now) ans = now;
		}
	printf("%d\n", ans);
	return 0;
}