判断迷宫是否可到达目的地的程序

【NOJ1141】【算法实验一】【DFS_回溯】走迷宫 1141.走迷宫 时限:1000ms 内存限制:10000K  总时限:3000ms 描述 判断是否能从迷宫的入口到达出口   输入 先输入两个不超过20的正整数表示迷宫的行数m和列数n,再输入口和出口的坐标,最后分m行输入迷宫,其中1表示墙,0表示空格每个数字之间都有空格。   输出 只能向上、下、左、右四个方向走若能到达,则输出"Yes",否则输出"No",结果占一行。  ... 阅读详情

       在写本程序之前,本人已经查看过了一些关于迷宫的一些算法,其中最为经典的算法之一就是A*算法,他们是找出一条能够从始点到终点的路径,这个算法要理解也不容易。现在,我参考一些算法,写一个求出始点是否可到终点的算法,尤为简单,请指教!

     其实,在解迷宫的算法思想有两种,一个是把迷宫的每个格点看做有八个方向的算法,另一个是看做四个方向的算法。其实,我们常常接触的迷宫就只是四个方向的算法。现在,本人就写一个迷宫可解(可以到达终点)的算法。很简单,所以就不解释了!

//迷宫算法,判断始点与终点是否可达 
#include<stdio.h>
#include<stdlib.h>
#define maxn 20
int mg[maxn][maxn],stx,sty,ex,ey,n,p=0;
int stack[maxn*maxn],top=0;
void push(int x,int y)
{
	stack[top]=x;
	top++;
	stack[top]=y;
	top++;
}
void pop()
{
	top--;
	sty=stack[top];
	top--;
	stx=stack[top];
}
int findpath()
{
	printf("输出所走过的路径:\n");
    while(stx!=ex || sty!=ey)
    {
    	printf("(%d,%d)=>",stx,sty);
    	mg[stx][sty]=2;
    	if(mg[stx-1][sty]==0)  {
    		push(stx-1,sty);
    		p=1;
    	}
    	if(mg[stx][sty-1]==0)  {
    	    push(stx,sty-1);
			p=1;	
    	}
    	if(mg[stx+1][sty]==0) {
    		push(stx+1,sty);
    		p=1;
    	} 
    	if
490. 迷宫 本题属于图的搜索问题,可将迷宫看作一个图,球的滚动过程就是在图中进行搜索。由于球在遇到墙壁前不会停止滚动,所以需要特殊处理球的移动规则。可以使用深度优先搜索(DFS)或广度优先搜索(BFS)来解决。球可以向上下左右四个方向滚动,但在遇到墙壁前不会停止滚动。当球停下时,可以选择下一个方向。起始位置和目的地用长度为 2 的数组表示,分别为。迷宫由一个二维数组表示,其中。,判断球能否在目的地停下。 阅读详情

相关推荐

【C++ 程序】 移动迷宫游戏

这个移动迷宫(Running Maze)程序为两玩家竞技项目。目标为到达出口。 // This is a Running Maze game program.

Teddy van Jerry的博客 3483

判断迷宫是否有出路

是判断《数据结构与算法分析C++描述第三部》课本P243页迷宫是否有出路

迷宫问题给一个20×20的迷宫、起点坐标和终点坐标,问从起点是否能到达终点。

7. 迷宫问题 给一个20×20的迷宫、起点坐标和终点坐标,问从起点是否能到达终点。 输入数据:’.’表示空格;’X’表示墙。

栈求迷宫问题

NULL 博文链接:https://hamber.iteye.com/blog/1929177

FPGA赋能:从加权灰度均值到快速收敛的自动曝光实战

本文深入探讨了FPGA在工业视觉自动曝光算法中的应用,重点介绍了加权灰度均值法的优化实现与快速收敛策略。通过硬件友好的算法改造和流水线架构设计,FPGA方案能在1帧内完成曝光调整,显著提升处理速度和能效比,适用于复杂光照条件下的工业检测场景。

weixin_29306317的博客 83

MacX DVD Ripper Pro for Mac(DVD解码器) 6.2.120190416免激活版

只需要5分钟即可转档一张DVD光碟!并允许我们在编码之前预览、编辑、裁剪、修剪或扩展视频。第一款也是唯一一款能够支持DVD到MP4,H.264,MOV,FLV,MPEG4等所有格式DVD(新DVD,99-标题DVD,损坏和无法播放的DVD)和翻录DVD / ISO映像的工具,AVI,QT,MP3等。借助350多种预设配置文件MacX DVD Ripper Pro for Mac(DVD解码器) 6...

llhf688的博客 891

【5G】5G 核心网(5GC)基本架构

本文旨在科普5G核心网相关知识...

Learning makes me happy (0^◇^0) 4万+

数字电路实验避坑指南:如何正确搭建主从JK触发器测试电路(附Proteus仿真)

本文详细解析了主从JK触发器的工作原理及实验搭建指南,重点解决了常见的Catching Problem现象,并提供了Proteus仿真优化方案。通过元器件选型、电路连接步骤和常见错误排查,帮助读者正确搭建测试电路,确保数字电路实验的稳定性和可靠性。

weixin_30790841的博客 470

2026闲鱼数据采集实战:本地YOLO识别滑块验证码+接口签名分析+零成本价格监控系统

2026闲鱼反爬系统升级实战:零成本解决方案 本文针对2026年闲鱼最新反爬机制提出了一套完整的零成本解决方案。系统面临四大挑战:AI滑块验证、接口签名升级、设备指纹绑定和精细化行为检测。通过以下技术突破实现稳定运行: 本地化AI破解:训练YOLOv11n模型实现98%准确率的滑块识别,替代付费打码平台 逆向工程:Hook闲鱼App签名算法,用Python重写HMAC-SHA256签名生成器 设备指纹管理:建立"一机一号一IP"机制,维护50+种设备特征 行为模拟:开发四阶段滑动轨迹模型

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1459

玩转Docker | 使用Docker部署MediaCMS内容管理系统

玩转Docker | 使用Docker部署MediaCMS内容管理系统

qq_59334230的博客 2920

IEC 104电力规约详细解读(五) - 遥控

主站下发遥控选择命令,子站进行遥控选择返校,若成功则回答遥控选择成功报文,若失败则回答失败报文。主站下发取消遥控命令或者遥控执行命令行。子站皆以报文的镜像确认。遥控命令用来实现对一个可操作设备状态的改变。在配电自动化中,包括单点命令和双点命令。通常,单点命令用于控制单点信息对象;双点命令用于控制双点信息对象。

张二狗的博客 7353

【VTKExamples::Meshes】第十二期 QuadricDecimation

本文分享VTK样例QuadricDecimation,并解析接口vtkQuadricDecimation,希望对各位小伙伴有所帮助!

qq_40041064的博客 344

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

WINCC7.3破解文件

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

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

上一篇: 使用jq实现可移动的弹出式窗口
下一篇: SQL通用版分页存储过程
wingahi
博客等级 码龄15年 15粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值