c++ Lake Counting
Lake Counting(bfs dfs)
题目描述
样例输入
10 12
W . . . . . . . . W W .
. W W W . . . . . W W W
. . . . W W . . . W W .
. . . . . . . . . W W .
. . . . . . . . . W . .
. . W . . . . . . W . .
. W . W . . . . . W W .
W . W . W . . . . . W .
. W . W . . . . . . W .
. . W . . . . . . . W .
样例输出
3
dfs代码
#include <stdio.h>//includes
#include <iostream>//up
using namespace std;//
int N, M;//定义行,列
char field[101][101];//整个院子(矩阵)
void dfs(int x,int y)//dfs
{field[x][y] = '.';//标为没有积水for (int dx = -1; dx <= 1; dx++)//枚举x坐标{//循环遍历8个方向for (int dy = -1; dy <= 1; dy++)//枚举x坐标{int nx = x + dx, ny = y + dy;//移动到遍历的方向if (0 <= nx && nx < N && 0 <= ny && ny < M&&field[nx][ny] == 'W')//判断是否穿墙 并且有积水dfs(nx, ny);//递归搜索下一个积水}}return;//退出
}void solve()//solve基本输入 调用函数
{int res = 0;//计数器for (int i = 0;i < N;i ++)//输入{for (int j = 0;j < M;j ++)//up{cin >> field[i][j];//up}}for (int i = 0; i < N; i++) //查找第一处积水{for (int j = 0; j < M; j++) //up{if (field[i][j] == 'W') //如果有积水{dfs(i, j);//调用函数递归查找所有节点res++;//计数器 + 1}}}printf("%d", res);//打印结果 Print res
}int main() //main
{scanf("%d%d", &N,&M);//输入行和列solve();//调用solve// system("pause");return 0;//return
}
转载于:https://www.cnblogs.com/LJA001162/p/11278259.html
c++ Lake Counting相关推荐
- DFS:深入优先搜索 POJ-2386 Lake Counting
深度优先搜索是从最开始的状态出发,遍历所有可以到达的状态. 因此可以对所有的状态进行操作,或列举出所有的状态. Lake Counting POJ - 2386 Due to recent rains ...
- Lake Counting POJ - 2386
Due to recent rains, water has pooled in various places in Farmer John's field, which is represented ...
- POJ 2386 Lake Counting
链接:http://poj.org/problem?id=2386 Lake Counting Time Limit: 1000MS Memory Limit: 65536K Total Submis ...
- 信息学奥赛一本通(1249:Lake Counting)
1249:Lake Counting 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 9435 通过数: 4902 [题目描述] 题意:有一块N×M的土地, ...
- NUC1158 Lake Counting【DFS】
Lake Counting 时间限制: 1000ms 内存限制: 65536KB 通过次数: 1总提交次数: 1 问题描述 Due to recent rains, water has pooled ...
- bzoj 3385: [Usaco2004 Nov]Lake Counting 数池塘(DFS)
3385: [Usaco2004 Nov]Lake Counting 数池塘 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 78 Solved: 6 ...
- Lake Counting S
Lake Counting S- [P1596 [USACO10OCT]Lake Counting S] 题目分析:刚开始我一直看不懂题目的意思,经过朋友的解释后我忽然发现这就是一个连通块的题目,与染 ...
- poj 2386 Lake Counting
poj 2386 Lake Counting 题目链接:http://poj.org/problem?id=2386 题目大意:数湖. 题目 ...
- POJ 2386 Lake Counting [DFS]
POJ 2386 Lake Counting 简单的DFS,用了stack代替递归,输入有问题,搞了蛮久,算法是没问题.所以以后一定要记得加上检查输入的那一步 然后对于点的定义以后就这么办吧 此外还有 ...
最新文章
- MinkowskiEngine多GPU训练
- Spring REST
- BugKuCTF WEB flag在index里
- boost::mpl::aux::msvc_is_class相关用法的测试程序
- 2021CCPC(桂林) - Suffix Automaton(后缀树+线段树)
- C和指针之Eratosthenes-埃拉托斯特尼筛方法找质数
- Div1 小A抓小B tarjan双连通分量缩点+dfs
- mysql my.cnf在哪里_my.cnf配置文件在哪
- python代码覆盖率测试_unittest+coverage单元测试代码覆盖操作实例详解_python
- jQuery 的“原型污染”安全漏洞
- VB.NET在线升级程序源代码,可以独立使用
- Python学习笔记(尚硅谷)——字符串
- 基于HTTP构建YUM网络源实战
- 数据库备份工具mysqldump重要参数详解
- 网络工程师之子网划分
- 如何引用阿里云矢量图标库
- 使用 Cloudflare 进行域名跳转(重定向)
- 九爷带你了解 深入理解 Memcache 原理
- 项目管理需要建立团队文化
- 基于云原生的私有化交付PAAS平台
热门文章
- 硬件MSB最高位优先、LSB最低位优先的CRC计算原理详细解释和程序,正算反算成功等效,DS18B20和HTU31D传感器CRC
- 向Hexo博客添加微博秀(pug模板)
- Qt qml 下使QtCharts
- freebsd MySQL 提权_Intel Sysret (CVE-2012-0217)内核提权漏洞
- iOS 真机调试 No profile for team xxxx matching xx found
- 江南游——苏州行(2)
- python选取特定行_pandas实现选取特定索引的行
- 一个铁通员工的自白:我们的效率为何最低
- perl linux yum,Linux CentOS6.5(x86_64)安装Perl5.26
- 如何解决网站首页老是被篡改经常反复被篡改