ACM 小蝌蚪安家 简单DFS
在一个矩形区域内,有些地方有水,有些地方没水。所有相邻的有水的地方会共同组成一个水洼,小蝌蚪想在这块区域中找到一个最大的水洼来安家。
有多组输入数据,每组第一行包含两个正整数n,m(n,m<=100),接下来n行,每行m个字符,“.”表示有水,“#”表示没水。
对于每组输入数据输出一行,包含一个整数,表示最大的水洼的面积。
3 3 ### ### ##. 2 3 #.. ..# 3 3 ##. #.. .##
1 4 3
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>using namespace std;int n, m, posn;
int vis[110][110];//标记走过的点,0表示没走过,1表示走过
char maps[110][110];//存这个区域
int dir[4][2] = { 1,0,-1,0,0,1,0,-1 };//四个方向
void dfs(int i, int j)
{if (i<0 || i >= n || j<0 || j >= m)//筛去不合法的路径return;if (vis[i][j] || maps[i][j] == '#')//如果这个点走过,或者这个点是'#',也不用走了return;posn++;vis[i][j] = 1;//面积pos已经自加1了,所以该点也就可以标记走过了for (int k = 0; k<4; k++)//往四个方向走dfs(i + dir[k][0], j + dir[k][1]);
}
int main()
{while (cin>>n>>m){int i, j, maxn = 0;memset(vis, 0, sizeof(vis));for (i = 0; i<n; i++)scanf("%s", maps[i]);for (i = 0; i<n; i++)for (j = 0; j<m; j++){if (maps[i][j] == '.' && (!vis[i][j]))//如果是水洼'.'并且这个水洼点'.'没有被计算过,则从这个点开始dfs{posn = 0;//posn存的是每块水洼的面积,每块计算的时候需要重置为0dfs(i, j);maxn = max(maxn, posn);}}cout << maxn << endl;}return 0;
}
ACM 小蝌蚪安家 简单DFS相关推荐
- #问题求解与编程# 实验三 G小蝌蚪安家
小蝌蚪安家 发布时间: 2018年4月2日 20:48 时间限制: 1000ms 内存限制: 128M 描述 在一个矩形区域内,有些地方有水,有些地方没水.所有相邻的有水的地方会共同组成一个水 ...
- bjfu1143 小蝌蚪安家 解题报告
搜索没判断重复 导致各种bug 广搜栈空间超了 深搜有调试了半天 真的无语了 记录一下 校内放了链接校外也访问不了 直接放题目 用visit数组记录是否出现在队列里面 数据结构学好 并且做的题目少的可 ...
- bjfu 1143 小蝌蚪安家(bfs入门)
本人的第一题bfs搜索: 在一个矩形区域内,有些地方有水,有些地方没水.所有相邻的有水的地方会共同组成一个水洼,小蝌蚪想在这块区域中找到一个最大的水洼来安家. Input 有多组输入数据,每组第一行包 ...
- 小蝌蚪安家 bjfu 1143 广度优先遍历
描述 在一个矩形区域内,有些地方有水,有些地方没水.所有相邻的有水的地方会共同组成一个水洼,小蝌蚪想在这块区域中找到一个最大的水洼来安家. 输入 有多组输入数据,每组第一行包含两个正整数n,m(n,m ...
- 【HDU3949 + BZOJ2115 + CF724G】【异或线性基例题】| 倍增 | 第k小异或和 | DFS处理环 |【CGWR】| N
三道关于异或线性基的有趣的题目 [1] HDU 3949. XOR Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/3276 ...
- Python每日一练-----妈妈找小蝌蚪(进阶版),指针的灵活运用
题目: 给定一个池塘里面有众多小蝌蚪(整数数组 nums) 他们已经排队好了,有一位青蛙妈妈(一个目标值 :0),请你帮助青蛙妈妈找到他的亲生孩子(青蛙:生的时候我也没想过要找啊),假设青蛙妈妈身上带 ...
- 五线谱上的小蝌蚪怎么看
一 什么是五线谱? 五线谱,顾名思义,即由平行的五条"线"构成的谱表. 五条"线"自下而上排序,最下面的一条为一线,最上面的为五线. 线与线之间的叫" ...
- pygame游戏_小蝌蚪吃蚊子幼虫成长
网上有许多小蝌蚪的游戏.其中有一游戏,小蝌蚪开始很小,其四处游动吃蚊虫(蚊子幼虫),吃一个蚊虫后其身体长大一点,长大到某尺寸变为青蛙.本例实现其部分功能.游戏有3个角色:小蝌蚪.蚊虫和背景角色.小蝌蚪 ...
- 小M的简单题(easy)
小M的简单题(easy) 时间限制:3s 内存限制:128MB [题目描述] 小M是某知名高中的学生,有一天,他请他的n个同学吃苹果,同学们排成一行,且手中已经有一些苹果.为了表示他的大方,有时他会给 ...
最新文章
- 【推荐】LSI(latent semantic indexing) 完美教程
- Boost:不受约束的bimap双图的测试程序
- 云计算的6个未来趋势
- 4、表单和高级选择器
- linux下开发问题汇总
- lucene解决全文检索word2003,word2007的办法
- c# 开发window服务
- matlab错误使用builtin,MATLAB环境下运行MATLAB函数时发生异常
- 每年都有人问“IT行业还能再火几年”,现实给出最好的答案
- infortrend ESDS RAID6故障后的数据恢复方案
- 高数符号用计算机表示,请问高等数学的符号怎么在电脑上打出来
- [数据][xml格式] 2012年统计用区划代码和城乡划分代码
- 车型数据导入excel
- android 滴滴司机接单滑动按钮,滴滴车主怎么设置手动接单 自动接单关闭步骤
- 基于OpenCV实现视频的循环播放
- MySQL查询指令示例---初学者必看
- 360公司 2020秋招 技术综合E卷 在线考试 编程题 第一题 表面积(web前端)
- python绘制动态k线及均线_Python绘制股票移动均线的实例
- 解析Activity的启动过程
- Java小白入门200例81之Java接口
热门文章
- PS_对联模板免费下载
- CCTV网络电视BETA上线,采用FLEX技术.
- 91助手之联系人获取
- 阿里健康再创新低:市值跌破1000亿港元,多家券商已下调目标价
- element-ui 表格组件设置最大高度后 宽度无限拉长问题
- 爷笑了!nginx的配置文件没有生效,访问的都是欢迎界面!
- exFAT 文件系统格式
- webots z向履带 x向偏移
- The neural particle method – An updated Lagrangian physics informed neural network for computational
- ubuntu如何调整界面大小