17:最好的草( 1.8编程基础之多维数组)

noi题库 1.8编程基础之多维数组 :题解大礼包20180918 题目传送门 1.8编程基础之多维数组 的全部题解,有需要的同学请自行学习。有任何错漏或者疑问,请留言。谢谢~~~ 1、题目分析 2、代码截图 1.8编程基础之多为数组 编号 题目 相对难度1-5 知识点 1 矩阵交换行 2 交换位置 2 同行列对角线的格子 3 米字星关系 3 计算矩阵边缘元素之和 2 ... 阅读详情

17:最好的草

总时间限制: 10000ms 单个测试点时间限制: 1000ms 内存限制: 65536kB
描述
奶牛Bessie计划好好享受柔软的春季新草。新草分布在R行C列的牧场里。它想计算一下牧场中的草丛数量。

在牧场地图中,每个草丛要么是单个“#”,要么是有公共边的相邻两个“#”。给定牧场地图,计算有多少个草丛。

例如,考虑如下5行6列的牧场地图

.#….
..#…
..#..#
…##.
.#….
这个牧场有5个草丛:一个在第一行,一个在第二列横跨了二、三行,一个在第三行,一个在第四行横跨了四、五列,最后一个在第五行。

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

#include<iostream>
using namespace std;
//http://noi.openjudge.cn/ch0108/17/
//类似于搜索的题,但是简单些 
int r,c,res=0,dx[]={0,1,-1,0},dy[]={1,0,0,-1};
char a[200][200];
bool f[200][200];
int main(){
    cin>>r>>c;
    for(int i=0;i<r;i++){
        for(int j=0;j<c;j++){
            cin>>a[i][j];
            f[i][j]=true;
        }
    }
    for(int i=0;i<r;i++){
        for(int j=0;j<c;j++){
            if(a[i][j]=='#'&&f[i][j]){
                res++;
                //cout<<res<<endl;
                for(int k=0;k<4;k++){
                    int x2=i+dx[k],y2=j+dy[k];
                    if(x2>=0&&x2<r&&y2>=0&&y2<c&&a[x2][y2]=='#'){
                        f[x2][y2]=false;
                    }
                }
            }
        }
    }
    cout<<res<<endl;
}
NOI/1.8编程基础之多维数组 题目ID 标题 分数 尝试人数 01 矩阵交换行 10 17195 02 同行列对角线的格子 10 11230 03 计算矩阵边缘元素之和 10 12893 04 错误探测 10 7603 05 计算鞍点 10 9726 06 图像相似度 10 86... 阅读详情

相关推荐

1.8编程基础之多维数组:1.4扫雷游戏地雷数计算

14.扫雷游戏地雷数计算 /* Name: 14_扫雷游戏地雷数计算 Copyright: c++ Author: 帝凌 Date: 29-08-17 10:06 Description:Accepted 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 扫雷游戏是一款十分经典的单机小游戏。它的精髓在于,通过已翻开格子所提示的周围格地雷数,来判断...

Stevensun6的博客 1526

17:最好的草

17:最好的草 查看 提交 统计 提问 总时间限制: 10000ms 单个测试点时间限制: 1000ms 内存限制: 65536kB描述 奶牛Bessie计划好好享受柔软的春季新草。新草分布在R行C列的牧场里。它想计算一下牧场中的草丛数量。 在牧场地图中,每个草丛要么是单个“#”,要么是有公共边的相邻两个“#”。给定牧场地图,计算有多少个草丛。 例如,考虑如...

weixin_34315485的博客 1314

【UV打印机】PrintExp打印软件教程(四)-设置校准电压

序号名称功能说明1校准材料设置定义当前打印材料,不同的材料参数绑定不同的校准值2向导勾选进行校准向导操作3校准类型包括喷头安装、步进校准、喷头间距、套色校准、双向校准4类型子项同类型子项5操作步骤校准存在步骤和校准说明示意图。

Print World的专栏 5074

17 CO配置-控制-产品成本控制-产品成本计划编制-定义成本核算类型(OKKI-Define Costing Types)

业务背景:定义成本核算类型 事务码: OKKI SPRO路径:SPRO->控制->产品成本控制->产品成本计划编制->带数量结构的成本估算->成本核算变式:组件->定义成本核算类型 第1步,SPRO路径进入 第2步,使用系统默认设置“01-标准成本估算(物料)” 配置完成! 2021年12月27日 写于芜湖 ...

11万+

LED背光驱动电路解析:从MP3394芯片到液晶屏灯管控制

本文深入解析了以MP3394芯片为核心的LED背光驱动电路工作原理。从升压电路的能量转换到多路LED的均流控制,详细阐述了其作为液晶屏背光“大脑”的关键作用,并提供了黑屏、闪屏、亮度不均等常见故障的实战检修思路与排查方法。

agile9scrum的博客 815

EPLAN二次开发实战指南:从API接口到定制化界面

本文为EPLAN二次开发实战指南,详细介绍了从搭建C#开发环境、理解API接口到创建定制化插件的完整流程。通过实战案例,如批量修改设备属性和设计交互式界面,帮助电气工程师利用EPLAN二次开发实现工作流程自动化与深度定制,从而显著提升设计效率。

weixin_29246195的博客 802

openjudge 1.8.17 最好的草

二维数组

weixin_60869516的博客 899

那些年-SAP固定资产导入AS91 OASV

固定资产起初导入步骤: 第一部分:资产数据导入 1)两个日期配置 填写图片摘要(选填) Specify transfer date/last closed fiscal year 这里的日期填写系统切换日期,如果系统是2015-10-01上线,这里填写2015-09-3 填写图片摘要(选填) Specifylast period posted in prv system 这里指定系统切换的上一期间。这里写2015-09 填写图片摘要(选填) ​2)AS91新增 填写固定资产的分类,公司

阿土工作室 7945

C语言基础语法复习05-c17详解

C17(C18)是C11标准的"bugfix发布",没有新功能。

weixin_43172531的博客 3万+

Obsidian免费同步全攻略:手把手教你用OneDrive+Remotely Save插件跨设备同步笔记

本文提供了一份详细的Obsidian免费同步方案指南,核心是利用OneDrive云存储与Remotely Save插件实现跨设备笔记同步。文章手把手教学,涵盖插件安装、OneDrive授权配置、桌面端与移动端的同步设置,并解答了常见问题,帮助用户在不依赖官方付费服务的情况下,构建稳定、自主的免费同步工作流。

bash7scripter的博客 849

8.9华为OD机试真题 新系统 - 灯带颜色变换 (Java/Py/C/C++/Js/Go)

8.9华为OD机试真题 新系统 - 灯带颜色变换 (Java/Py/C/C++/Js/Go)

算法大师! 663

25 条 SSH 命令和技巧

SSH是一个非常伟大的工具,如果你要在互联网上远程连接到服务器,那么SSH无疑是最佳的候选。下面是通过网络投票选出的25个最佳SSH命令,你必须牢记于心。 1、复制SSH密钥到目标主机,开启无密码SSH登录 ssh-copy-id user@host 如果还没有密钥,请使用ssh-keygen命令生成。 2、从某主机的80端口开启到本地主机2001端口的 ssh 隧道 ssh -...

反方向的专栏 2383

AUTOSAR-SOMEIP配置总结

导入arxml之后someip信号一般以“pduSomeIp”开头或者“SomeIp”开头。以某个pdu为例,设置项“Pdu Default Partition Ref”主要是根据模块设计,配置相应的Ecuc核分区。在导入arxml之后someip信号中有三个特殊的信号,形如“SdInstance”开头的信号,设置项“Pdu Default Partition Ref”主要是根据模块设计,配置相应的Ecuc核分区。“EcuC”模块主要关注“EcucPduCollection”中的“Pdus”下面的配置。

xiandang8023的博客 4651

oj 1.8编程基础之多维数组 17:最好的草

这个牧场有5个草丛:一个在第一行,一个在第二列横跨了二、三行,一个在第三行,一个在第四行横跨了四、五列,最后一个在第五行。接下来R行,每行C个字符,描述牧场地图。字符只有“#”或“.”两种。在牧场地图中,每个草丛要么是单个“#”,要么是有公共边的相邻两个“#”。给定牧场地图,计算有多少个草丛。奶牛Bessie计划好好享受柔软的春季新草。新草分布在R行C列的牧场里。它想计算一下牧场中的草丛数量。第一行包含两个整数R和C,中间用单个空格隔开。例如,考虑如下5行6列的牧场地图。输出一个整数,表示草丛数。

2301_80062106的博客 585

Halcon 形态学 开发案例 (开运算opening(先腐蚀再膨胀)、闭运算closing(先膨胀再腐蚀))

算子方法:功能:使用用户自定义的结构元素对区域进行开运算参数: Region(输入参数) :输入区域 StructElement(输入参数) :结构元素(区域) RegionOpening(输出参数) :开运算后的区域功能:使用圆形结构元素对区域进行开运算参数: Region(输入参数) :输入区域 RegionOpening(输出参数) :开运算后的区域 Radius(输入参数) :圆形结构元素的半径功能:使用矩形结构元素对区域进行开运算。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 1618

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

OJ题目详解——1.8~17:最好的草

这个牧场有5个草丛:一个在第一行,一个在第二列横跨了二、三行,一个在第三行,一个在第四行横跨了四、五列,最后一个在第五行。接下来R行,每行C个字符,描述牧场地图。在牧场地图中,每个草丛要么是单个“#”,要么是有公共边的相邻两个“#”。给定牧场地图,计算有多少个草丛。新草分布在R行C列的牧场里。带入测试后,报错的代码给出的答案是3,而AC的给出的是4。第一行包含两个整数R和C,中间用单个空格隔开。欢迎各位大佬在评论区留言,谈谈自己的看法。例如,考虑如下5行6列的牧场地图。输出一个整数,表示草丛数。

daimaxiaozi12的博客 596

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

1.8编程基础之多维数组01:矩阵交换行

01:矩阵交换行 描述 给定一个5*5的矩阵(数学上,一个r×c的矩阵是一个由r行c列元素排列成的矩形阵列),将第n行和第m行交换,输出交换后的结果。 输入输入共6行,前5行为矩阵的每一行元素,元素与元素之间以一个空格分开。第6行包含两个整数m、n,以一个空格分开。(1 <= m,n <= 5)输出输出交换之后的矩阵,矩阵的每一行元素占一行,元素之间以一个空格分...

weixin_30724853的博客 1557

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

C++的多维数组

该代码有效地将二维数组“展平”到一维数组中,并对所有元素进行赋值操作。如果你有进一步的问题或需要更详细的解释,请告诉我!这种方法更适合那些在运行时需要灵活调整行列结构的场景,例如处理不规则矩阵或多行多列的动态数据。在需要高性能的场景中,通常会选择使用展平的方式来优化内存访问效率。两种方法各有优势,具体选择取决于应用场景和性能需求。

weixin_44259499的博客 1590

【Matlab】多维数组

例如,使用 repmat 函数创建一个 2×3×1×4 数组,其元素全部为 5,第三个维度的长度为 1。多维数组是二维矩阵的扩展,并使用额外的下标进行索引。要访问多维数组中的元素,请使用整数下标,就像在向量和矩阵中一样。例如,找到 A 中下标为 1,2,2 的元素,它位于 A 的第二页上的第一行第二列。使用 permute 函数,通过在第二个参数中指定维度顺序,将每一页上的行下标和列下标交换。例如,首先定义一个 3×3 矩阵,作为三维数组中的第一页。MATLAB 中的多维数组是指具有两个以上维度的数组。

wq6qeg88的博客 2191

MATLAB 语言基础知识 矩阵和数组 多维数组

MATLAB中的多维数组是指具有两个以上维度的数组。在矩阵中,两个维度由行和列表示。 每个元素由两个下标(即行索引和列索引)来定义。多维数组是二维矩阵的扩展,并使用额外的下标进行索引。例如,三维数组使用三个下标。前两个维度就像一个矩阵,而第三个维度表示元素的页数或张数。 创建多维数组 要创建多维数组,可以先创建二维矩阵,然后再进行扩展。例如,首先定义一个 3×3 矩阵,作为三维数组中的第一页。 A = [1 2 3; 4 5 6; 7 8 9] A = 3×3 1 2 3 4

科学推动技术,技术成就科学 3758

Matlab的多维数组操作

MATLAB中的多维数组是指具有两个以上维度的数组。在矩阵中,两个维度由行和列表示。 每个元素由两个下标(即行索引和列索引)来定义。多维数组是二维矩阵的扩展,并使用额外的下标进行索引。例如,三维数组使用三个下标。前两个维度就像一个矩阵,而第三个维度表示元素的页数或张数。 创建多维数组 要创建多维数组,可以先创建二维矩阵,然后再进行扩展。例如,首先定义一个 3×3 矩阵,作为三维数组中的第一页。 A = [1 2 3; 4 5 6; 7 8 9]A = 3×3

qingfengxd1的博客 1万+

C语言基础:C 中数组详解(多维数组、传递数组给函数 、从函数返回数组 、指向数组的指针 )

C 中数组详解(多维数组、传递数组给函数 、从函数返回数组 、指向数组的指针 )

天行健 君子以自强不息,地势坤 君子以厚德载物。 2165

【JavaScript】多维数组及数组扁平化

一维数组:数组中只有数据的时候就是一维数组;多维数组:字面理解就是数组中嵌套了数组;数组扁平化通俗来讲就是将多维数组转化为一维数组,本文主要讲解数组扁平化的方法。

浅陌繁星的博客 1050

C语言笔记之多维数组,字符数组

C语言笔记

pkhlll的博客 2214

c++多维数组

多维数组(Multi-Dimensional Array)是指二维及以上的数组,它们用于存储多个相同类型的数据元素,并且这些元素按照多个维度进行组织。多维数组可以看作是由多个一维数组(或更低维度的数组)组成的数组。多维数组的常见维度包括二维数组、三维数组等。以二维数组为例,它可以看作是由多个一维数组(行)组成,而每个一维数组又包含多个元素(列)。同样地,三维数组可以看作是由多个二维数组组成,以此类推。多维数组在编程中有很多应用,例如用于表示矩阵、图像、三维模型等复杂数据结构。

maxzhang10的博客 860

C#基础:多维数组

如果你有表格、矩阵、网格形状的日期,那么多维数组就很有用。我们通过在方括号中添加逗号来声明多维数组。我们可以以这种方式分别声明二维、三维、四维数组 [,]、[、][、、]。C 语言中的多维数组#C# 中带有变量的功能:一维数组声明:一维可以通过以下符号来声明。一维数组声明:示例dataType[] arrayName; // Declare an integer array named NumIn...

dotNET跨平台 498
上一篇: 13:图像模糊处理(1.8编程基础之多维数组)
下一篇: 25:螺旋加密(1.8编程基础之多维数组)
qq_26919935
博客等级 码龄12年 85粉丝 149原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值