【信息学奥赛课课通】最大黑区域

信息学奥赛(NOIP/CSP-J/S)学习全目录 课程学习顺序指引 1、纲要 2、CL0-CL4内容后续更新 3、CL5 递归:地址 4、JL4搜索:地址一 其他内容陆续更新 练习指引 1、51nod一起刷题 2、洛谷一起刷题 3、历年真题刷题 陆续更新 阅读详情

题目描述

二值图像是由黑白两种像素组成的矩形点阵,图像识别的一个操作是求出图像中最大黑区域的面积。请设计一个程序完成二值图像的这个操作。黑区域由黑像素组成,一个黑区域中的每像素至少与该区域中的另一像素相邻,规定一个像素仅与其上、下、左、右的像素相邻。两个不同的黑区域没有相邻的像素。一个黑区域的面积是其所包含的像素数。

输入

第 1 行含两个正整数 n 和 m,1≤n、m≤100,分别表示二值图像的行数与列数,后面紧跟着n 行,每行含 m 个整数 0 或 1,其中第 i 行表示图像的第 i 行的 m 个像素,0 表示白像素,1 表示黑像素。

输出

输出一个数,表示相应的图像中最大黑区域的面积。

样例输入

5 6
0 1 1 0 0 1
1 1 0 1 0 1
0 1 0 0 1 0
0 0 0 1 1 1
1 0 1 1 1 0

样例输出

7

循环,若此元素未被标记则进行搜索,每搜到一个标记一下,并将计数器++,最后输出

代码:

#include <bits/stdc++.h>
using namespace std;
char a[101][101];
int sum, ans, n, m;

void dg(int x, int y)
{
	if (a[x][y] == '1')
		{
			a[x][y] = '0';
			sum++;
		}
	if (a[x + 1][y] == '1')
		dg(x + 1, y);
	if (a[x - 1][y] == '1')
		dg(x - 1, y);
	if (a[x][y + 1] == '1')
		dg(x, y + 1);
	if (a[x][y - 1] == '1')
		dg(x, y - 1);
}

main()
{
	freopen("area.in","r",stdin);
	freopen("area.out","w",stdout);
	scanf("%d%d", &n, &m);
	for (int i = 1; i <= n; i++)
		{
			for (int j = 1; j <= m; j++)
				{
					cin >> a[i][j];
				}
		}
	for (int i = 1; i <= n; i++)
		{
			for (int j = 1; j <= m; j++)
				{
					if (a[i][j] == '1')
						{
							sum = 0;
							dg(i, j);
							ans = max(sum, ans);
						}
				}
		}
	printf("%d", ans);
	return 0;
}
信息学奥赛课课通.zip 书本配套ppt课件、测试数据、参考程序,是教师教学、布置作业的必备 立即下载

相关推荐

信息学奥赛基础知识习题(答案版)

一、选择题(下列各题仅有一个正确答案,请将你认为是正确的答案填在相应的横线上) 1. 我们把计算机硬件系统和软件系统总称为 C 。 (A)计算机CPU (B)固件 (C)计算机系统 (D)微处理机 2. 硬件系统是指 D 。 (A)控制器,运算器 (B)存储器,控制器

最大黑区域

Problem 最大黑区域Accepted: 585   Total Submit: 1044 Time Limit: 1000ms   Memony Limit: 32768KBDescription二值图像是由黑白两种像素组成的矩形点阵,图像识别的一个操作是求出图像中最大黑区域的面积。请设计一个程序完成二值图像的这个操作。黑区域由黑像素组成,一个黑区域中的每个像素至少与该区域中的另一个像素相邻...

代码敌敌畏的博客 1569

《信息学奥赛一本通·编程启蒙 C++版》目录 2023.12.01(N).pdf

《信息学奥赛一本通·编程启蒙 C++版》目录 2023.12.01(N)

zstuacm数据结构基础13-最大黑区域

zstuacm数据结构基础13-最大黑区域 二值图像是由黑白两种像素组成的矩形点阵,图像识别 的一个操作是求出图像中最大的黑区域的面积。请设计一个程序完成二值图像的这个操作,黑区域由黑像素组成,一个黑区域中的每像素至少与该区域中的另一个像素相邻,规定一个像素仅与其上下左右的像素相邻。两个不同的黑区域没有相邻的像素。一个黑区域的面积是其所包含的像素数。 第一行两个正整数n和m,1<=n,m<=100,分别表示二值图像的行数与列数。 后面紧跟着n行,每行含m个整数0或1,其中第i行表示图像的第i行的

qq_42677487的博客 1033

信息学奥赛一本通·编程启蒙 C++版(2023.10.23).pdf

信息学奥赛一本通·编程启蒙 C++版(2023.10.23)

两相交错并联BuckBoost变换器仿真模型(Simulink仿真实现)

内容概要:本文档系统整合了电力电子与新能源领域的Simulink仿真资源,聚焦于两相交错并联Buck-Boost变换器的双闭环PWM控制建模与仿真,同时涵盖多种典型拓扑结构,包括交错并联Boost、PFC功率因数校正、LLC谐振变换器、双向CLLC、DAB变换器、VIENNA整流器等。资源体系完整,包含仿真模型、设计报告、计算书、PPT说明文档及Matlab/Python代码,覆盖从基础建模到高级控制策略(如软开关技术、谐波抑制、状态估计、双闭环控制)的全流程。此外,还拓展至状态估计(卡尔曼滤波、粒子滤波)、智能优化算法、机器学习、信号处理、路径规划等多个交叉学科方向,构建了一个面向科研与工程应用的综合性技术平台。; 适合人群:电气工程、自动化、电力电子、新能源科学与工程等专业的硕士博士研究生、高校科研人员,以及从事新能源发电、智能电网、电动汽车、电力传动等领域技术研发的工程师。; 使用场景及目标:①开展电力电子变换器(如Buck-Boost、LLC、DAB、PFC等)的建模、控制与仿真研究;②支撑课程设计、学位论文、科研项目中的系统仿真与算法验证;③学习并复现高水平期刊(如EI)提出的先进控制策略,如基于KKT条件的最优控制、扩展移相调制、恒压恒流双环竞争控制等;④结合智能算法(如粒子群、秃鹰算法)进行微电网调度、储能配置、路径规划等多目标优化问题的研究与快速原型开发。; 阅读建议:建议依据提供的资源目录循序渐进地查阅资料,优先选取与自身研究方向高度契合的内容进行深入学习;应结合仿真模型与配套文档动手实践,调试参数并分析结果,充分利用百度网盘与公众号渠道获取完整资源,提升科研工作的系统性、规范性与创新性。

信息学奥赛一本通 1216:红与黑 搜索与回溯算法

每组数据的第一行是两个整数W和H,分别表示x方向和y方向瓷砖的数量。在接下来的H行中,每行包括W个字符。有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。对每组数据,分别输出一行,显示你从初始位置出发能到达的瓷砖数(记数时包括初始位置的瓷砖)。3)‘@’:黑色的瓷砖,并且你站在这块瓷砖上。当在一行中读入的是两个零时,表示输入结束。1)‘.’:黑色的瓷砖;2)‘#’:红色的瓷砖;

长春高老师编程 1404

MOS 管驱动设计细节,波形分析

一般认为MOSFET是电压驱动的,不需要驱动电流。然而,在MOS的G S两级之间有结电容存在,这个电容会让驱动MOS变的不那么简单。 如果不考虑纹波和EMI等要求的话,MOS管开关速度越快越好,因为开关时间越短,开关损耗越小,而在开关电源中开关损耗占总损耗的很大一部分,因此MOS管驱动电路的好坏直接决定了电源的效率。 对于一个MOS管,如果把GS之间的电压从0拉到管子的开启电压所用的时间越短,那么MOS管开启的速度就会越快。与此类似,如果把MOS管的GS电压从开启电压降到0V的时间越短,那么MOS管关断的

m0_50862404的博客 1万+

问题 B: 数据结构基础13-最大黑区域

这个题目,我觉得最关键的是你不用去考虑,当你把已经用掉过的1变成0时会不会导致最后的结果改变,实际上是不会的,因为你每一个最大的黑区域都是包含了这一片的1,也就是说你不管从哪个1 开始,其实都不会改变这一片黑区域的最大值,因此来说这个跟队列里的a题是有类似之处的,或者说两道题目很像,只是这道题目花的时间和空间复杂度可能会多一点。请设计一个程序完成二值图像的这个操作,黑区域由黑像素组成,一个黑区域中的每像素至少与该区域中的另一个像素相邻,规定一个像素仅与其上下左右的像素相邻。

2301_80550438的博客 1355

拆解歌尔2718硅麦:2.75mm超小封装背后的MEMS技术解析

本文深度解析歌尔2718硅麦的2.75mm超小封装技术,探讨MEMS麦克风在微型化过程中的声学性能与结构可靠性平衡。通过ASIC芯片堆叠、纳米级应力控制等创新技术,歌尔2718在TWS耳机和智能手机中实现卓越性能,同时克服微型化带来的声学挑战。

weixin_28292761的博客 610

蛋白质组学进阶指南 | (八)差异蛋白筛选与功能解析实战

本文是蛋白质组学差异蛋白筛选与功能解析的实战指南。详细讲解了如何利用R语言的limma包进行差异表达分析,结合FDR校正和差异倍数设定筛选关键蛋白,并通过火山图可视化结果。进一步介绍了使用clusterProfiler进行GO与KEGG功能富集分析,以及利用STRING数据库和Cytoscape构建蛋白互作网络以识别枢纽分子,最终串联分析形成可验证的生物学假说。

weixin_29208077的博客 739

课课通、一本通、提高篇、算法竞赛进阶指南 测试数据

课课通、一本通、提高篇、算法竞赛进阶指南 测试数据

青少年趣味编程 2467

5G核心网Framed Routing功能解析:基于PFCP的帧路由机制与多终端互联实践

5G核心网Framed Routing功能解析:基于PFCP的帧路由机制与多终端互联实践

大家好,我是码农老gou,一名专注于编程技术的程序员。在这个博客中,我将与大家分享我在工作和学习中的经验、见解以及一些实用的技术干货。 1463

CCF-201312-3(最大的矩形)

最大矩形 一:题目描述 在横轴上放了n个相邻的矩形,每个矩形的宽度是1,而第i(1 ≤ i ≤ n)个矩形的高度是hi。这n个矩形构成了一个直方图。例如,下图中六个矩形的高度就分别是3, 1, 6, 5, 2, 3。 请找出能放在给定直方图里面积最大的矩形,它的边要与坐标轴平行。对于上面给出的例子,最大矩形如下图所示的阴影部分,面积是10。 二:理解 ①.法一:暴力法...

Sunflower的博客 618

Python爬虫经典案例第67篇:社交媒体平台爬取:Twitter数据采集实战

Twitter(现更名为X)是全球最具影响力的社交媒体平台之一,拥有超过3.3亿月度活跃用户。作为一个实时信息传播平台,Twitter上的数据涵盖了新闻、政治、娱乐、科技等各个领域,具有极高的研究价值:本文将深入探讨Twitter数据采集的技术方案,包括官方API调用、网页爬取和浏览器自动化三种方式。Twitter采用现代化的微服务架构,主要特点包括:Twitter作为全球最大的社交媒体平台,拥有完善的反爬机制:在开始爬取前,需要明确合法的数据采集方式:重要提示:未经授权爬取Twitter数据可能违反服务条

2201_76125261的博客 659

高通camx进程ExtensionModule::TeardownOverrideSession类型crash问题分析之一:【死锁导致】

摘要:本文分析了一个在相机老化测试中出现的pthread_cond_wait持锁超时导致的ExtensionModule::TeardownOverrideSession崩溃问题。通过crash堆栈和日志分析,发现close阶段存在近1分钟的无响应期。进一步分析trace文件发现存在多线程死锁:ChiFeature2Graph::GenerateSmartErrorCode和ChiFeature2RequestObject::SetCurRequestState两个线程分别持有不同锁并互相等待对方释放。最终

1110

探索信息学奥赛之路:课课通资源全面解析

探索信息学奥赛之路:课课通资源全面解析 去发现同类优质开源项目:https://gitcode.com/ 在信息技术日益重要的今天,信息学奥林匹克竞赛(IOI)不仅激发了无数青少年对计算机科学的兴趣,也成为了培养未来科技人才的重要舞台。今天,我们要向广大教育者与学子隆重推荐一个开源宝藏——《信息学奥赛课课通资源下载》。 项目介绍 这个精心打造的开源项目,如同一盏明灯,照亮了信息学奥赛的教学路径。它...

gitblog_09780的博客 927

AgentScope深入分析-ReActAgent

ReActAgent 是 AgentScope 框架中最核心的智能体实现,它完美诠释了"推理-行动"(Reasoning-Acting)循环的精髓。本文将深入分析 ReActAgent 的类继承关系、核心执行流程,以及状态管理、钩子机制、实时介入等关键技术点。通过阅读本文,你会理解智能体如何与模型交互、如何执行工具、如何处理中断,以及这些机制背后的设计考量。模块化:通过组合不同的组件(模型、格式化器、工具集、记忆)来构建智能体透明性:所有关键流程都对开发者可见,可以精确控制可扩展性。

842

【免费下载】 信息学奥赛课课通(C++)配套资料

信息学奥赛课课通(C++)配套资料 【下载地址】信息学奥赛课课通C配套资料 本仓库提供了《信息学奥赛课课通(C++)》课程的完整配套资料,包括电子课件PPT、习题答案、习题参考代码以及测试数据。这些资源旨在帮助学生更好地理解和掌握课程内容,提升编程技能。 ...

gitblog_09805的博客 1643

如何使用Python爬取并保存网页上的所有附件

爬虫(Crawler)是一种自动化程序,它通过模拟人工访问网页并下载网页上的数据或文件,常用于数据采集和分析。爬虫通常以“爬取”的形式自动浏览和提取网页中的各种信息。本文详细介绍了如何使用Python爬取并保存网页中的附件文件,涵盖了网页解析、文件下载、多线程与异步优化等内容。希望通过本文的讲解,能够帮助你理解并掌握附件爬取的技巧。在实际应用中,爬虫开发不仅需要解决技术问题,还要遵守网络道德和法律法规,避免不当使用爬虫造成负面影响。

2201_76125261的博客 965

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

信息学奥赛课课通配套资料C2023:助力编程爱好者掌握C++,提升竞赛能力

信息学奥赛课课通配套资料C2023:助力编程爱好者掌握C++,提升竞赛能力 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 信息学奥赛课课通配套资料(C++)2023是一套专为编程爱好者打造的C++学习资源。这套资料涵盖了C++基础知识讲解、经典算法题解析、实战案例分享、历年竞赛真题解析和编程技巧与心得等内容,旨在帮助编程爱好者全面掌握C++语言,为参加信息学奥林匹克竞...

gitblog_06713的博客 338

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

《信息学奥赛课课通C49375-00》配套资料:全面提升信息学奥赛实战能力

《信息学奥赛课课通C49375-00》配套资料:全面提升信息学奥赛实战能力 去发现同类优质开源项目:https://gitcode.com/ 项目核心功能/场景 为信息学奥赛选手提供全面学习资源,涵盖讲义、例题、习题解析,助力编程能力提升。 项目介绍 在当前信息学奥赛日益激烈的竞争环境下,拥有一套系统的学习资料是每位选手成功的关键。《信息学奥赛课课通(C++)》(49375-00)配套资料,正是为...

gitblog_06788的博客 1090

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

【亲测免费】 信息学奥赛课课通配套资料(C++):助力编程竞赛的全面学习平台

信息学奥赛课课通配套资料(C++):助力编程竞赛的全面学习平台 【下载地址】信息学奥赛课课通配套资料C 本书配套资源包括电子课件PPT、习题答案、习题参考代码、测试数据共4部分。信息学奥林匹克竞赛是受各级各类学校重视、受青少年学生欢迎的计算机编程类竞赛活动。本书以Dev-C++为语言载体,以“程序=算法+数据结构”为教学...

gitblog_09779的博客 1018

信息学奥赛课课通(C++)资源文件介绍

信息学奥赛课课通(C++)资源文件介绍 【下载地址】信息学奥赛课课通C资源文件介绍 信息学奥赛课课通(C++)资源仓库为学习者提供了全面而详尽的课程资源,助力信息学奥赛的进阶之路。资源包含电子课件PPT,系统讲解C++编程语言及算法核心知识点;习题答案与参考代码,帮助巩固知识并掌握算法实现;测试数据,便于验证程序正确性,...

gitblog_06734的博客 322

《信息学奥赛课课通(C++)》(49375-00)配套资料下载说明

《信息学奥赛课课通(C++)》(49375-00)配套资料下载说明 去发现同类优质开源项目:https://gitcode.com/ 《信息学奥赛课课通(C++)》(49375-00)配套资料,旨在为广大学员提供全面、系统的信息学奥赛学习和训练资源。本资料包括但不限于课堂讲义、实战例题、习题解析等丰富内容,以帮助学员巩固理论知识,提高编程能力,备战信息学奥赛。 本资源文件包含以下内容: 详细的课...

gitblog_06721的博客 704
上一篇: 【NOIP2016普及组复赛模拟赛】买装备(equipment)
下一篇: 【2016江苏省小学生夏令营选拔】小 X 学游泳
开朗的坤坤
博客等级 码龄5年 11粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值