uva/6-12 572
来源:互联网 发布:苹果电脑网络不可用 编辑:程序博客网 时间:2024/06/05 03:47
油田
两个相邻则说明属于一个油田 则数目加加,又是一个递归,并不难
#include<cstdio>#include<cstring>const int maxn=1000+5;char tu[maxn][maxn]; //输入图的数组int m,n,idx[maxn][maxn]; //标记数组void dfs(int r,int c,int id){ if(r<0||r>=m||c<0||c>=n)//去除出界的 return; if(idx[r][c]>0||tu[r][c]!='@')//已经被标记 或者不是油田 return; idx[r][c]=id;//将id存入 for(int dr=-1; dr<=1; dr++) for(int dc=-1; dc<=1; dc++) // 寻找周围八块 if(dr!=0||dc!=0) //不包括它自己 dfs(r+dr,c+dc,id); //递归}int main(){ int i,j; while(scanf("%d%d",&m,&n)==2&&m&&n) { for(i =0; i<m; i++) scanf("%s",tu[i]); memset(idx,0,sizeof(idx)); int q=0; for(i=0; i<m; i++) for(j=0; j<n; j++) if(idx[i][j]==0&&tu[i][j]=='@') dfs(i,j,++q); printf("%d\n",q); } return 0;}
0 0
- uva/6-12 572
- 例题6-12 油田(Oil Deposits, UVa 572)
- UVa 572
- UVA 572
- UVA 572
- uva 572
- uva --572
- uva 572
- uva 572
- uva 572
- uva 572
- uva 572
- UVA 572
- UVA 572
- UVA 572
- 例题6-12 UVA Oil Deposits油田
- 例题 6-12 油田 UVa 572 用dfs求连通块
- 经典第六章 例题 6-12 UVA 572 Oil Deposits(用DFS求连通块)
- SpringMVC + MyBatis + Mysql + Redis(作为二级缓存) 配置
- vc p2p demo
- 洛谷P1144 最短路计数(spfa)
- 使用Vue框架实现NGA客户端
- 【JZOJ 3623】【SDOI2014】数表
- uva/6-12 572
- Linux下进程间通信方式——管道
- PAT-A1091
- POJ3617——Best Cow Line
- 要明确几个地方是结束不能占用的,
- 实例—ViewPager+RadioGroup实现底部导航栏和页面的滑动
- Codeforces Round #403 C. Andryusha and Colored Balloons
- 一起Talk Android吧(第十一回:Java中的继承)
- 520. Detect Capital