问题 R: Lake Counting

时间限制: 1 Sec  内存限制: 128 MB

题目描述

题意:有一块N×M的土地,雨后积起了水,有水标记为‘W’,干燥为‘.’。八连通的积水被认为是连接在一起的。请求出院子里共有多少水洼?

输入

第一行为N,M(1≤N,M≤110)。

下面为N*M的土地示意图。

输出

一行,共有的水洼数。

样例输入

10 12
W........WW.
.WWW.....WWW
....WW...WW.
.........WW.
.........W..
..W......W..
.W.W.....WW.
W.W.W.....W.
.W.W......W.
..W.......W.

样例输出

3

徐不可说:lake counting 是好久之前在《挑战程序设计竞赛》上看过,后来在oj上a了好多遍的老题目,搜索类水题的代表

#include<iostream>
using namespace std;
int n,m;
char a[1000][1000];
void dfs(int x,int y)
{a[x][y]='.';  //将'w'修改成'.',避免重复搜索for(int fx=-1;fx<2;fx++)   for(int fx2=-1;fx2<2;fx2++)  //3*3=9个方向遍历
{int nx=x+fx,ny=y+fx2;if(0<=nx&&nx<n&&0<=ny&&ny<m&&a[nx][ny]=='W') dfs(nx,ny);
}return ;   //关键的return!!
}
int main(){cin>>n>>m;for(int i=0;i<n;i++)for(int j=0;j<m;j++)cin>>a[i][j];int res=0;for(int i=0;i<n;i++){for(int j=0;j<m;j++){if (a[i][j]=='W'){dfs(i,j);res++;}    }
}cout<<res<<endl;return 0;
} 

深度搜索的典范!

Lake Counting相关推荐

  1. DFS:深入优先搜索 POJ-2386 Lake Counting

    深度优先搜索是从最开始的状态出发,遍历所有可以到达的状态. 因此可以对所有的状态进行操作,或列举出所有的状态. Lake Counting POJ - 2386 Due to recent rains ...

  2. Lake Counting POJ - 2386

    Due to recent rains, water has pooled in various places in Farmer John's field, which is represented ...

  3. POJ 2386 Lake Counting

    链接:http://poj.org/problem?id=2386 Lake Counting Time Limit: 1000MS Memory Limit: 65536K Total Submis ...

  4. 信息学奥赛一本通(1249:Lake Counting)

    1249:Lake Counting 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 9435     通过数: 4902 [题目描述] 题意:有一块N×M的土地, ...

  5. NUC1158 Lake Counting【DFS】

    Lake Counting 时间限制: 1000ms 内存限制: 65536KB 通过次数: 1总提交次数: 1 问题描述 Due to recent rains, water has pooled ...

  6. bzoj 3385: [Usaco2004 Nov]Lake Counting 数池塘(DFS)

    3385: [Usaco2004 Nov]Lake Counting 数池塘 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 78  Solved: 6 ...

  7. c++ Lake Counting

    Lake Counting(bfs dfs) 题目描述 样例输入 10 12 W . . . . . . . . W W . . W W W . . . . . W W W . . . . W W . ...

  8. Lake Counting S

    Lake Counting S- [P1596 [USACO10OCT]Lake Counting S] 题目分析:刚开始我一直看不懂题目的意思,经过朋友的解释后我忽然发现这就是一个连通块的题目,与染 ...

  9. poj 2386 Lake Counting

    poj   2386   Lake Counting                           题目链接:http://poj.org/problem?id=2386 题目大意:数湖. 题目 ...

  10. POJ 2386 Lake Counting [DFS]

    POJ 2386 Lake Counting 简单的DFS,用了stack代替递归,输入有问题,搞了蛮久,算法是没问题.所以以后一定要记得加上检查输入的那一步 然后对于点的定义以后就这么办吧 此外还有 ...

最新文章

  1. 动态人脸识别系统服务器,动态人脸识别监控管理平台的设计与实现
  2. 激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
  3. Windows使用MSVC,命令行编译,链接64位dll,Python调用
  4. 脑机前沿 | 利用BCI来进行大脑想象手写进行文本输出
  5. 【VLC-Android】LibVLC API简介(相当于VLC的MediaPlayer)
  6. 阿里腾讯今日头条纷纷选择的工具,ClickHouse到底有什么本事?
  7. oracle数据泵导入分区表统计信息报错(一)
  8. c++预处理命令 #line 用法
  9. Docker Swarm bind 数据持久化
  10. 33条C#、.Net经典面试题目及答案[zt]
  11. 【网络流24题----09】方格取数问题
  12. OJ1064: 加密字符(C语言)
  13. MySQL------如何将SQLServer文件数据迁移到MySQL
  14. 《数学之美》马尔科夫链的扩展-贝叶斯网络
  15. (四)训练运行Deep CycleGAN以进行移动风格迁移
  16. 181006扇贝有道每日一句
  17. Adobe Flash 离线安装包下载
  18. 百度编辑器UEditor图片上传尺寸大小设置
  19. 【媒体聚焦】“我们为什么要为景安点赞”——记景安网络十四年峥嵘岁月
  20. 举些例子看看一个程序员的水平究竟可以差到什么程度?

热门文章

  1. 什么是云计算?这个愚蠢的流行词是什么意思?
  2. 【图像识别】基于计算机视觉实现自动报靶系统(重弹孔)含Matlab源码
  3. rs485全双工中只接一组_终于有人把RS485通讯的正确接线方式讲明白了,网友:这下好办了...
  4. 猴王问题(项目分析以及项目实现)
  5. 服务器硬盘红灯常亮_硬盘指示灯一直亮
  6. 移动端切图内容包括什么_移动端切图备忘
  7. CentOS后门入侵检测工具
  8. lambda累加求和
  9. 从市盈率、市净率、增值率看公司盈利经营发展状况
  10. 导论:什么是 Conversational Robot