#include<iostream>
#include<string>
#include<stack>
#include<vector>
#include<queue>
#include<cstdio>
using namespace std;
int max(int a,int b){
return a>b?a:b;
}
int a[110][110],vis[111][111];
int N,M,K;
int dfs(int x,int y){ //求得点块的大小 
int z=1;
if(a[x][y]==0) return 0;
vis[x][y]=1;
if(x-1>0&&!vis[x-1][y]) z+=dfs(x-1,y);
if(y-1>0&&!vis[x][y-1]) z+=dfs(x,y-1);
if(x+1<=N&&!vis[x+1][y]) z+=dfs(x+1,y);
if(y+1<=M&&!vis[x][y+1]) z+=dfs(x,y+1);
return z;
}

struct Node{int x,y;};
int dx[]={0,-1,0,1};
int dy[]={-1,0,1,0};
int bfs(int X,int Y){
int i,val=0;
Node now;
now.x=X , now.y=Y;
queue<Node>q;
q.push(now);
vis[X][Y]=1;
while(!q.empty()){
Node u=q.front();q.pop();
val++; //计数
for(i=0;i<4;i++){ //四个方向的查找
Node v;
v.x=dx[i]+u.x;
v.y=dy[i]+u.y;
if(v.x<1 || v.x>N) continue;
if(v.y<1 || v.y>M) continue;
if(!vis[v.x][v.y]&&a[v.x][v.y]==1){
q.push(v); //加入队列
vis[v.x][v.y]=1; //标记为访问过
}
}
}
return val;
}
int main(){
cin>>N>>M>>K;
int i,j;
for(i=0;i<K;i++){
int x,y;
scanf("%d%d",&x,&y);
a[x][y]=1;
}
int ans=0;
for(i=1;i<=N;i++){
for(j=1;j<=M;j++){
if(a[i][j]==1&&!vis[i][j]){
ans=max(ans,bfs(i,j));
}
}
}
printf("%d\n",ans);
return 0;
}

poj3620的更多相关文章

  1. ACM训练计划建议(写给本校acmer,欢迎围观和指正)

    ACM训练计划建议 From:freecode#  Date:2015/5/20 前言: 老师要我们整理一份训练计划给下一届的学弟学妹们,整理出来了,费了不少笔墨,就也将它放到博客园上供大家参考. 菜 ...

  2. 【POJ水题完成表】

    题目 完成情况 poj1000:A+B problem 完成 poj1002:电话上按键对应着数字.现在给n个电话,求排序.相同的归一类 完成 poj1003:求最小的n让1+1/2+1/3+...+ ...

  3. poj练习题的方法

    poj1010--邮票问题 DFSpoj1011--Sticks dfs + 剪枝poj1020--拼蛋糕poj1054--The Troublesome Frogpoj1062--昂贵的聘礼poj1 ...

  4. ACM学习大纲

    1 推荐题库 •http://ace.delos.com/usaco/ 美国的OI 题库,如果是刚入门的新手,可以尝试先把它刷通,能够学到几乎全部的基础算法极其优化,全部的题解及标程还有题目翻译可以b ...

  5. ACM训练计划建议(转)

    ACM训练计划建议 From:freecode#  Date:2015/5/20 前言: 老师要我们整理一份训练计划给下一届的学弟学妹们,整理出来了,费了不少笔墨,就也将它放到博客园上供大家参考. 菜 ...

  6. ACM训练大纲

    1. 算法总结及推荐题目 1.1 C++ STL • STL容器: set, map, vector, priority_queue, queue, stack, deque, bitset• STL ...

  7. ACM学习大纲(转)

    1 推荐题库 •http://ace.delos.com/usaco/ 美国的OI 题库,如果是刚入门的新手,可以尝试先把它刷通,能够学到几乎全部的基础算法极其优化,全部的题解及标程还有题目翻译可以b ...

随机推荐

  1. java实战之数组工具集

    java是一门面向对象的语言,我们也提到过,面向对象的一个优点就在于能够提高代码的复用性,前面我们详细讲过数组的查找,排序,等等,为了提高代码的复用性,我们何不自己写一个数组的工具集,来综合下前面所学 ...

  2. UVA 796 Critical Links(无向图求桥)

    题目大意:给你一个网络要求这里面的桥. 输入数据: n 个点 点的编号  (与这个点相连的点的个数m)  依次是m个点的   输入到文件结束. 桥输出的时候需要排序   知识汇总: 桥:   无向连通 ...

  3. 【转】Android Recovery模式

    原文网址:http://leox.iteye.com/blog/975303 (muddogxp 原创,转载请注明) Recovery简介 Android利用Recovery模式,进行恢复出厂设置,O ...

  4. 【转】java参数传递(超经典)

    原文网址:http://blog.sina.com.cn/s/blog_4b622a8e0100c1bo.html Java中的参数传递机制一直以来大家都争论不休,究竟是“传值”还是“传址(传引用)” ...

  5. guid转int

    如果你想生成一个数字序列,你将会获得一个19位长的序列. 下面的方法会把GUID转换为Int64的数字序列.  private static long GenerateIntID()  {       ...

  6. Java---JUnita、注解与类加载器详解以及实例

    JUnit软件测试技术(工具) 在项目中建立专门用户测试的包结构. 在Junit中,通过@Test注解,可以运行一个方法. ★ Junit注解说明 使用了@Test注解应该满足以下条件: 1) 必须是 ...

  7. 数据结构典型算法的VC实现(袁辉勇)

    1. 迷宫问题求解 #include <stdio.h> #define m 8 //迷宫内有8列 #define n 8 //迷宫内有8行 #define MAXSIZE 100//栈尺 ...

  8. Codeforces Round #335 (Div. 1)--C. Freelancer's Dreams 线性规划对偶问题+三分

    题意:p, q,都是整数. sigma(Ai * ki)>= p, sigma(Bi * ki) >= q; ans = sigma(ki).输出ans的最小值 约束条件2个,但是变量k有 ...

  9. hdu 4322 最大费用流

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4322 #include <cstdio> #include <cstring> ...

  10. hdu 1754 线段树模板题

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754 #include <cstdio> #include <cmath> # ...