说明

奶牛Bessie计划好好享受柔软的春季新草。新草分布在R行C列的牧场里。它想计算一下牧场中的草丛数量。
在牧场地图中,每个草丛要么是单个“#”,要么是有公共边的相邻多个“#”。给定牧场地图,计算有多少个草丛。
例如,考虑如下5行6列的牧场地图
.#....
..#...
..#..#
....##
.....#
这个牧场有3个草丛:一个在第一行,一个在第二列横跨了二、三行,一个在第三行横跨了三、四、五行。

输入格式

第一行包含两个整数R和C,中间用单个空格隔开。
接下来R行,每行C个字符,描述牧场地图。字符只有“#”或“.”两种。(1 <= R, C <= 100 )

输出格式

输出一个整数,表示草丛数。

样例

输入数据 1

5 6
.#....
..#...
..#..#
....##
.....#

Copy

输出数据 1

3

dfs模板题

做题的时候如果代码是通过修改前一个代码得来的,需要好好检查一下边界,取值,输入等问题,千万不能大意!!!

#include <stdio.h>
#include <math.h>
#include <algorithm>
#include <iostream>
#include <string.h>
#include <queue>
#include <stack>
#include <map>
#include <set>
#include <vector>
using namespace std;
int n,m,ans=0,vis[105][105],sum,s;
int dx[4]= {-1,0,0,1},dy[4]= {0,-1,1,0};
char a[105][105];
void dfs(int x,int y) {vis[x][y]=1;for(int i=0; i<4; i++) {int tx=x+dx[i],ty=y+dy[i];if(tx>0&&ty>0&&tx<=n&&ty<=m&&vis[tx][ty]==0&&a[tx][ty]=='#') {dfs(tx,ty);}}
}
int main() {scanf("%d%d",&n,&m);for(int i=1; i<=n; i++) {cin>>a[i];}for(int i=1; i<=n; i++) {for(int j=1; j<=m; j++) {if(!vis[i][j]&&a[i][j]=='#'){ans++;dfs(i,j);}}}cout<<ans<<endl;return 0;
}

追们算法----奶牛和草丛相关推荐

  1. 电子凸轮应用追剪算法详细图解(附PLC完整源代码)

    谈到运动控制就离不开编码器,有关编码器测速,测距的相关内容,大家可以查看专栏的其它文章,和飞剪控制息息相关的编码器测速,请参看下面的博客,链接如下: 如何通过编码器信号计算输送线/输送带线速度(飞剪. ...

  2. 穷举算法——奶牛碑文(cow)

    - 穷举算法--奶牛碑文(cow) 题目描述 小伟暑假期间到大草原漫游,在一块石头上发现了一些有趣的碑文.碑文似乎是一个神秘古老的语言,只包括三个大写字母 C.O 和W. 尽管小伟看不懂,但是令他高兴 ...

  3. 如何通过编码器信号计算输送线/输送带线速度(飞剪、追剪算法基础)

    不同品牌PLC如何采集编码器的频率(速度)信号,专栏有系列文章和详细讲解,这里不再赘述,链接地址如下: PLC通过编码器反馈值计算速度的推荐做法(算法解析+ST代码)_RXXW_Dor的博客-CSDN ...

  4. 追梦算法----方格取数

    说明 在 n 行.m 列的方格矩阵中,每个方格都包含一个数字.小明可以从任意方格出发开始移动.每次移动可以移到与当前方格有一条边相邻的方格(即向上.下.左或右方向移动 1 格,且不能移出边界).除此之 ...

  5. 追梦算法----修路

    说明 某市调查城镇交通状况,得到现有城镇道路统计表.表中列出了每条道路直接连通的城镇.市政府 "村村通工程" 的目标是使全市任何两个城镇间都可以实现交通(但不一定有直接的道路相连, ...

  6. 追梦算法----P1072. 排队打水

    题目描述 有 n 个人排队到 1 个水龙头处打水,第 i 个人装满水桶所需的时间是 ti​,请问如何安排他们的打水顺序才能使所有人的等待时间之和最小? 输入格式 第一行包含整数 n. 第二行包含 n ...

  7. 追梦算法----数字找朋友

    Description 给定起始数字 a  (1<=a<=10^5) 还有终止数字 b (0<=b<=10^8)我们现在有三种操作方法: 给当前的数字 x 乘3 给当前的数字  ...

  8. 追梦算法----睡懒觉

    Description 你的同桌犯困了,于是她想睡会让你待会叫她起来,但是她这个人吧有个癖好,喜欢在 回文时间 的时候起来,例如 12:21 就是一个回文时间(精确到分) 如果她被你叫起来的时候发现不 ...

  9. 追梦算法----马的遍历

    说明 中国象棋半张棋盘如图(a)所示.马自左下角往右上角跳.今规定只许往右跳,不许往左跳,且要求马跳的方式按照(b)图顺时针深度优先递归.比如图(a)中所示为一种跳行路线.如果马要从0,0点,跳到4, ...

最新文章

  1. 我使用Python和Django在自己的网站上建立了一个会员专区。 这是我学到的东西。
  2. 扫地机器人评测 毛发_会切毛发的机器人?海尔扫地机P70抢先评测
  3. session的存储方式和配置
  4. centos7下端口映射
  5. nginx源码分析—数组结构ngx_array_t
  6. JS高级进阶之ECMAScript 常见面试题
  7. 《Python编程:从入门到实践 》[Eric Matthes著] 中文pdf非扫描版
  8. miracast投屏软件下载_手机画面如何投屏到电视?
  9. python爬虫数据分析系统_2小时精通python爬虫技术 带你打造Bug系统数据抽取及统计分析...
  10. 【自】数据库系统原理(三)——测试总结后,
  11. VS2012:出现devenv.sln解决方案保存对话框
  12. redhat 5.4 yum配置
  13. postfix+web页面+身份验证
  14. 苦逼IT男必然生女?
  15. Latex WinEdt7.0查找替换功能
  16. 配置vs2008和udk与nFringe
  17. 餐饮水单打印软件_除了进销存,管家婆软件能做的很多!
  18. Load Runner:了解软件安装后目录http://www.boobooke.com/bbs/thread-1959-1-1.html
  19. c语言数组回文数编写字符串,回文数C语言(示例代码)
  20. 微信小程序 实用的公告栏滚动效果

热门文章

  1. 秋冬易感冒着凉 风寒感冒9大食疗方
  2. 了解过什么是 DDD吗?一文带你掌握!(至尊典藏版)
  3. 数据分析师成长路径-第一阶段
  4. 二进制如何转十进制,十进制如何转二进制
  5. android app 运行时提示 应用专为旧版 Android 打造
  6. Vue组件(二)父组件、子组件通信/传值
  7. Ubuntu20.04+Nvidia RTX 3060 显卡驱动安装
  8. 关闭Window 10 Ctrl+Shift+B(表情包)快捷键冲突
  9. H3C CAS 5.0 虚拟机备份与还原
  10. 使用云祺虚拟机备份软件恢复SANFOR HCI虚拟机