[HDU-1240] 三维的FLOODFILL

matlab开发-FloodFill3D matlab开发-FloodFill3D。该程序在二进制矩阵中填充三维区域。 立即下载

很简单的题目,不过我又开始犯打字错误——误将一个f[][][]打成tag[][][],结果我一直在debug...

/*
 * HDU-1240 asteroid
 * mike-w
 * 2012-9-25
 */
#include<stdio.h>
#include<string.h>

#define MAXSIZE 16
#define BUFSIZE 64
#define QSIZE 1024

typedef struct Position
{
	int x, y, z;
}pos;

int n, x0, yy0, z0, x1, yy1, z1;
char f[MAXSIZE][MAXSIZE][MAXSIZE];
int tag[MAXSIZE][MAXSIZE][MAXSIZE];
pos que[QSIZE];
int qhead, qtail, qlen;
int dir[6][3]={{0,0,1}, {0,0,-1}, {0,1,0}, {0,-1,0}, {1,0,0}, {-1,0,0}};

int enque(pos *p)
{
	que[qtail].x=p->x;
	que[qtail].y=p->y;
	que[qtail].z=p->z;
	qtail=(qtail+1)%QSIZE;
	qlen++;
	return 0;
}

int deque(pos *p)
{
	p->x=que[qhead].x;
	p->y=que[qhead].y;
	p->z=que[qhead].z;
	qhead=(qhead+1)%QSIZE;
	qlen--;
	return 0;
}

int read(void)
{
	char buf[BUFSIZE];
	int t, i, j;
	if(scanf("%s%d", buf, &t)==EOF)
		return 0;
	n=t;
	memset(f, 0, sizeof(f));
	for(i=0; i<n; i++)
		for(j=0; j<n; j++)
			scanf("%s", f[i][j]);
	scanf("%d%d%d", &z1, &yy1, &x1);
	scanf("%d%d%d", &z0, &yy0, &x0);
	scanf("%s", buf);
	return 1;
}

int main(void)
{
	pos cur;
	int x2, y2, z2;
	int i;
	while(read())
	{
		memset(tag, 0, sizeof(tag));
		tag[x0][yy0][z0]=1;
		cur.x=x0;
		cur.y=yy0;
		cur.z=z0;

		enque(&cur);
		while(qlen>0)
		{
			deque(&cur);
			for(i=0; i<6; i++)
			{
				x2=cur.x+dir[i][0];
				y2=cur.y+dir[i][1];
				z2=cur.z+dir[i][2];
				if(x2>=0 && x2<n && y2>=0 && y2<n && z2>=0 && z2<n
						&& !tag[x2][y2][z2] && f[x2][y2][y2]=='O')
				{
					tag[x2][y2][z2]=tag[cur.x][cur.y][cur.z]+1;
					cur.x=x2;
					cur.y=y2;
					cur.z=z2;
					enque(&cur);
				}
			}
		}
		if(tag[x1][yy1][z1])
			printf("%d %d\n", n, tag[x1][yy1][z1]-1);
		else
			puts("NO ROUTE");
	}
	return 0;
}



利用MATLAB 4f光学系统,在Python中进行弗劳恩霍夫衍射和傅里叶面滤波——用镜头模拟光学图像处理。.zip 1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 立即下载

相关推荐

工业互联网工控安全与工业质检AI大模型建设方案.pptx

工业互联网工控安全与工业质检AI大模型建设方案.pptx

Flood Fill算法总结

最近一直跟着y总在刷蓝桥杯的课,借此我来对里面设计到的Flood Fill算法做一个我目前接触到的所有的flood fill算法的总结 总 首先,这本质上是一个搜索算法。他的作用是对一个图(目前我用到的都是二维数组的图,不是图论的图)的所有的连通块进行操作 它是可以从其中一个点出发,扩展与这个点相邻的所有点 也就是说,给定连通块的所有的点,都可以把这个连通块上所有的点全部搜到 那么我对每一步进行讲解,并对每一个例题给出代码,这里只讲解bfs的写法 int bfs(PII start){ queue&lt

INGg__的博客 1438

通信行业CentOS 7内核网络栈优化:高并发连接下UDP/TCP性能调优与系统资源管理

内容概要:本文聚焦于CentOS 7系统在通信行业高并发场景下的性能调优实践,重点围绕内核网络栈优化展开,涵盖UDP/TCP缓冲区调整、文件句柄与连接跟踪表扩容、TIME_WAIT状态复用、软中断分布优化及tuned工具的自动化调优。通过具体配置参数和实际案例(如VoIP软交换系统)深入解析各项调优措施的设计原理与实施效果,有效解决高CPS下丢包、连接失败等问题,并展望了向云化、eBPF等动态智能调优方向的发展趋势。; 适合人群:从事通信系统运维、网络开发或Linux系统性能优化的技术人员,具备一定操作系统和网络基础知识,工作经验1年以上的中初级工程师。; 使用场景及目标:①应用于软交换、媒体网关、信令网关等高并发通信设备的系统调优;②解决UDP丢包、conntrack表满、TCP连接队列溢出等典型性能瓶颈;③提升系统在小包高频、低时延要求场景下的稳定性和吞吐能力。; 阅读建议:建议结合实际生产环境或测试平台同步验证文中配置,重点关注参数背后的物理意义(如BDP、softirq、conntrack机制),并配合ss、conntrack、dmesg等命令进行调优前后对比分析,确保安全可控地实施变更。

种子点生长算法下——三维种子点生长

上一篇文章“二维种子点生长研究”介绍了二维种子点生长,对于平面图像,二维种子点生长其实很容易理解,其典型应用是“油漆桶”。例如在一个具有多片联通区域的二维图上,我们能用油漆桶寻找所需要的单片联通区域。   至于三维种子点生长,其目的与二维种子点生长一样,都是要找出图像中的联通区域。三维图像由于其多了一维,所以三维的联通区域就不太好用二维图片来查看了。关于三位图片的介绍可以参考第一篇“

u013339596的专栏 4434

2024 《计算机网络》实验教学指导书.doc

2024 《计算机网络》实验教学指导书.doc

不平衡电网下自抗扰顺序模型预测PWM整流器控制仿真模型(Simulink仿真实现)

内容概要:本文围绕面向城市空中交通的多无人机路径规划问题展开研究,提出了一套融合全局规划、动态避障与局部协同调整的综合路径规划方法。研究内容涵盖基于改进RRT算法与图论的全局路径规划、基于动态风险场和动态窗口法(DWA)的模型预测控制实现动态避障,以及基于分布式协同控制的多无人机局部路径协同策略。通过Matlab平台构建仿真环境,在多种典型城市交通场景下对所提方法进行了系统性验证,结果表明该方法在路径安全性、编队稳定性与任务效率方面表现优异。文章还深入探讨了算法的创新点与未来研究方向,为复杂城市环境下多无人机系统的自主协同提供了理论支撑与技术路径。; 适合人群:具备自动化、控制理论、计算机科学或相关领域基础知识,从事无人机系统、智能交通、路径规划、多智能体协同控制等方向研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①为城市空中交通系统中的多无人机安全、高效飞行提供可靠的路径规划解决方案;②支持在复杂、动态的城市场景中开展无人机自主导航、编队飞行与协同控制的技术研究与仿真验证。; 阅读建议:建议结合提供的Matlab代码进行实践操作,重点关注算法的具体实现细节、参数配置对性能的影响以及不同仿真场景下的实验设计,以深入理解各模块的集成逻辑与实际应用效果。

realsense 人脸三维重建

1.dlib检测人脸 2.保存彩色信息(png)和深度信息(npy) 3.点云显示 #coding = utf-8 import pyrealsense2 as rs import cv2 import numpy as np import dlib import pcl def find_martrix_min(data_matrix): new_data=[] for...

足迹 4303

告别乱码!ESP32+LVGL显示中文的保姆级教程(基于ESP-IDF,附7000字库生成)

本文详细介绍了如何在ESP32上使用LVGL显示中文的完整解决方案,包括中文字库生成、ESP-IDF工程集成和优化技巧。通过7000字库生成和实战案例,帮助开发者彻底解决中文乱码问题,适用于智能家居、智能手表等嵌入式设备开发。

weixin_28740299的博客 396

opencv FloodFill(漫水填充)和物体选取

简介   本篇主要是介绍opencv的FloodFill(漫水填充)和基于它实现的物体选取。 FloodFill使用 FloodFill函数   C++: int floodFill(InputOutputArray image, InputOutputArray mask, Point seedPoint, Scalar newVal,

羽凌寒 1万+

Xilinx Vitis arm-xilinx-eabi-gcc.exe: error: *.c: Invalid argument

This problem may be a bugof version 2021.1 only. Unfortunately, I'm just currently using this version. After Build Project: Find where this Makefile is through "make: Leaving directory" information. For me, it is located atZynq_CPU_wrapper_hw_platfo...

Ayka的博客 6660

别再死记硬背Modbus报文了!用Python+Modbus Poll手把手教你调试工业设备

本文详细介绍了如何利用Python和Modbus Poll工具高效调试工业设备通信。通过实战案例和代码示例,帮助读者快速掌握Modbus通信协议的核心配置、数据监控技巧及Python自动化脚本编写,解决工业设备调试中的常见问题,提升工作效率。

weixin_42520780的博客 344

cvFloodFill的使用方法和注意事项。

ysw1234的专栏 9935

关于Arduino中的常用函数

一、I/O函数 二、时间函数 三、数学函数 abs 返回其参数的无符号值 【abs(12)返回12,abs(-12)也返回12】 constrain 限制一个数字以阻止它超出范围。第一个参数是被限制的数字,第二个参数是范围区间的开始,第三个参数是允许的数字范围区间的结尾。 【constrain(8,1,10)返回8,constrain(11,1,10)返回10,constrain(0,1,10)返回1】 map 将一个范围内的数字映射到另一个范围。第一个参数是要映射到数字,第二个和第三个参数是from范围(

TREE的博客 7322

cvFloodFill漫水填充算法

这种填充算法首先要选择一个种子点,然后把邻近区域所有相似点填充上同样颜色,大多数的填充算法都与cvFloodFill()类似。 cvFloodFill(img,CvPoint seedPoint,CvScalar newVal,CvScalar loDiff,CvScalar upDiff, CvConnectedComp *comp,int flags,CvArr *mask); img为输入图

jameshater的博客 2815

Kafka 入门篇(一)

初识 Kafka 什么是 Kafka Kafka 的基本术语 Kafka 的特性(设计原则) Kafka 的使用场景 Kafka 的消息队列 点对点模式的消息队列 发布-订阅模式的消息队列 Kafka 系统架构 核心 API Kafka 为何如此之快 broker 端配置 broker.id port zookeeper.connect log.dirs num.recovery.threads.per.data.dir auto.create.topics.enable topic默认配置 num.par

1231

安卓手机部署酒馆 SillyTavern 全攻略(Termux 本地安装教程)

本文详细介绍了如何在安卓手机上通过 Termux 环境本地部署 SillyTavern,一个功能丰富的角色扮演对话 AI。步骤包括安装 Termux、Git,克隆 SillyTavern 仓库,安装 Node.js 和依赖,启动 SillyTavern,以及可选的高阶玩法——安装 TAI-Extras 扩展模块。文章还提供了常见问题的解决方案和优化技巧,如更新 SillyTavern、处理报错、文件访问、添加快捷命令和禁用安卓后台进程杀死。通过本教程,用户可以在安卓手机上体验本地部署的 AI 对话,享受更高

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1万+

UVA ~ 12171 ~ Sculpture (离散化 + floodfill)

题意:某雕塑由n(n≤50)个边平行于坐标轴的长方体组成。每个长方体由六个整数x0,y0,z0,x,y,z表示(均为1~500的整数),其中x0为长方体的顶点中x坐标的最小值,x表示长方体在x方向的总长度。其他4个值类似定义。你的任务是统计这个雕像的体积和表面积,注意雕塑内部可能会有密闭的空间,其体积硬计算在总体积中,但从“外部”看不见的面不应计入表面积,雕塑可能会由多个联通块组成。【分析】设想有...

张松超的博客 601

数学建模学习(120):使用Python实现基于AHP的供应商选择分析

使用Python实现基于AHP的供应商选择分析

全栈川川 909

图像处理------泛洪填充算法(Flood Fill Algorithm) 油漆桶功能

泛洪填充算法(Flood Fill Algorithm) 泛洪填充算法又称洪水填充算法是在很多图形绘制软件中常用的填充算法,最熟悉不过就是 windows paint的油漆桶功能。算法的原理很简单,就是从一个点开始附近像素点,填充成新 的颜色,直到封闭区域内的所有像素点都被填充新颜色为止。泛红填充实现最常见有四邻域 像素填充法,八邻域像素填充法,基于扫描...

weixin_34235371的博客 2029

OpenCV-Python图形图像处理:自用的一些工具函数源代码

本文为《OpenCV-Python图形图像处理:博主自用的一些工具函数功能及调用语法介绍》内容配套函数的源代码。

老猿Python 2494

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

L - Oil Deposits HDU - 1241(flood fill,dfs,基础搜索)

The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large rectangular region of land at a time, and create...

weixin_30852419的博客 111

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

[离散化][floodfill] Sculpture Uva12171,HDU2771

题目描述 题解 floodfill 离散化 unique函数 AC代码 题目描述 Imagine a box, made of copper plate. Imagine a second one, intersecting the first one, and several others, intersecting each other (or not)....

loyxCCS的博客 443

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

图像处理之泛洪填充算法(Flood Fill Algorithm)

泛洪填充算法(Flood Fill Algorithm) 泛洪填充算法又称洪水填充算法是在很多图形绘制软件中常用的填充算法,最熟悉不过就是 windows paint的油漆桶功能。算法的原理很简单,就是从一个点开始附近像素点,填充成新 的颜色,直到封闭区域内的所有像素点都被填充新颜色为止。泛红填充实现最常见有四邻域 像素填充法,八邻域像素填充法,基于扫描线的像素填充方...

weixin_33726318的博客 1787

区域生长算法整理(二)C#实现三维漫水填充

原理 循环栈内点,填充并判断点附近的六个方向是否有需填充的点,若是且点未在栈内就压入栈。循环至栈空。 FloodFill() { 把seedPoint放入栈中; 标记seedPoint点为true; while(栈内数量不为0) { 从栈中提取一点p; 把p变色; foreach(点p附近的6个点) { if(点p是目标点且标记为false)

卷之博 574
上一篇: [HDU-1016] 链表优化的DFS
下一篇: [HDU-1035] 递推
creativewang
博客等级 码龄17年 20粉丝 203原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值