广搜 解救小哈

 标题      我们要解救小哈,并得到最短的步数,输入m行n列由0和1构成的迷宫,1为怪兽该区域不能走。写出代码得到最短的步数。

输入     

输入m,n。输入由0和1组成的m*n大小的迷宫,输入起点x1,y1。终点x2,y2。

输出

一个常数,y。

代码

#include<bits/stdc++.h>
using namespace std;
int a[51][51]={0},b[51][51]={0};
struct note
{
    int x;
    int y;
    int f;
    int step;
};
typedef struct note que;
int n,m;
int main(void)
{
    que book[2510];
    int i,j,h,y,x1,x2,y1,y2,steam=0,tail=0,l=0;
    int next[4][2]={{1,0},{0,1},{-1,0},{0,-1}};
    cin>>n>>m;
    for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
    {
        cin>>a[i][j];
    }
    cin>>x1>>y1>>x2>>y2;
    book[tail].x=x1;
    book[tail].y=y1;
    book[tail].f=0;
    book[tail].step=0;
    b[x1][y1]=1;
    tail++;
    
    while(steam<tail)
    {
        for(i=0;i<4;i++)
        {
            h=book[steam].x+next[i][0];
            y=book[steam].y+next[i][1];
            if(h>0&&h<=n&&y>0&&y<m)
            {
                if(a[h][y]==0&&b[h][y]==0)
                {
                    b[h][y]=1;
                    book[tail].x=h;
                    book[tail].y=y;
                    book[tail].step=book[steam].step+1;
                    tail++;
                }
            }
            if(h==x2&&y==y2)
            l=1;
        }
        if(l==1)
        break;
        steam++;
    }
    cout<<book[tail-1].step <<endl;
    return 0;
 }

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 0xc000021a蓝屏错误通常是由系统文件损坏或错误的驱动程序引起的。以下是解决此问题的方法: 1. 进入安全模式:在启动时按F8键,选择“安全模式”进入系统。 2. 恢复系统:在安全模式下,打开“控制面板”-“系统和安全”-“恢复”,选择“系统还原”,选择一个可用的还原点进行恢复。 3. 更新驱动程序:在安全模式下,打开“设备管理器”,找到有黄色感叹号的设备,右键选择“更新驱动程序”。 4. 执行SFC扫描:在安全模式下,打开命令提示符,输入“sfc /scannow”命令,等待扫描完成。 5. 修复系统文件:在安全模式下,打开命令提示符,输入“dism /online /cleanup-image /restorehealth”命令,等待修复完成。 6. 重新安装系统:如果以上方法都无法解决问题,可以尝试重新安装系统。在重新安装前,备份重要数据。 ### 回答2: 0xc000021a 蓝屏是 Windows 10 系统经常会遇到的一种蓝屏问题,它通常伴随着无法启动 Windows 或者意外死机。该问题主要源于系统文件丢失或系统文件损坏,或者因为系统驱动程序或系统软件的冲突导致系统无法正常启动。解救方法如下: 1. 进入安全模式 首先尝试进入 Windows10 安全模式。通过安全模式,可以更加方便的找到问题所在。可以按下F8 或 Ctrl+F8 键,进入安全模式。 2. 恢复系统 如果在进入安全模式后仍然无法解决问题,可以考虑使用Windows 10的系统还原功能,将系统还原到之前的状态。 3. 清理系统文件 使用 Windows PE 系统启动盘,进入系统后用专业的系统清理工具,如 CCleaner, 清理系统文件。 4. 修复系统文件 Windows 10 自带了系统文件扫描和修复工具 sfc /scannow,使用该工具扫描并修复系统文件。 5. 更新或卸载驱动程序或软件 如果问题依旧存在,可能是因为系统驱动程序或系统软件的冲突导致。此时需要尝试更新或卸载驱动程序或软件。 总之,对于 0xc000021a 蓝屏问题,能够恢复系统就应该尝试恢复系统,不要贸然进行其他尝试。如果不确定该怎么做,就不要随意尝试,需要寻求专业人士的帮助。 ### 回答3: 0xc000021a蓝屏错误是指Windows系统访问属于Windows核心的系统文件时发生致命错误,导致操作系统无法启动。这个错误是比较严重的,但是并不意味着系统就无法救回。下面具体介绍win10的0xc000021a蓝屏解救方法。 一、安全模式 Windows 10在启动过程中也会自动进入安全模式。切换到安全模式可以解决大量启动错误,包括0xc000021a。请按住Shift键,同时单击“启动”按钮。 选择“启动设置”,然后单击“重启”。 按下4,以进入安全模式。 安全模式不仅可以诊断和解决大量的启动错误,还会避免许多与t0xc000021a相关的功能问题。 二、系统还原 还原系统到你认为是可用的时间点。在Windows 10中,使用恢复管理器还原系统,谷歌“恢复管理器”,然后右键单击启动管理器。有关从启动菜单启动应用程序的详细信息,请参阅Windows 10更新中的应用程序。 三、检查硬件问题 硬件故障也可以导致0xc000021a蓝屏错误。如果您最近更改了硬件配置,则更有可能出现此问题。 如果您认为有硬件问题,请打开计算机,并检查连接到内部设备的电缆,如硬盘驱动器电缆或电源电缆,是否固定。 确保所有的RAM都正常连接和固定。 四、创建安装介质 如果您无法访问Windows 10或不能运行修复安装程序,则可以使用 WinPE来确定或访问您的Windows 10安装。 从制造Windows 10安装媒体并打开它来启动计算机。 仅使用Windows 10支持的选项使您选择闪存驱动器作为插入设备,并将其插入未运行Windows 10的计算机。 请注意,如果你选择的选项使用了磁盘格式,它将删除整个磁盘上的所有数据。 选择磁盘分区选项才能避免这种情况。 以上是处理0xc000021a蓝屏错误的几种方法,如果还没有解决问题,可能需要进行更深入的系统故障排除和修复。如果不确定解决方案,请参阅Windows支持包或联系Microsoft支持-他们可以提供更多的帮助和建议。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值