hdu2102A计划(bfs)

软件工程:数据字典 数据字典 阅读详情

hdu2102A计划
A计划
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 33348 Accepted Submission(s): 8254

Problem Description
可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验。魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的肉也能长生不老。年迈的国王正是心急如焚,告招天下勇士来拯救公主。不过公主早已习以为常,她深信智勇的骑士LJ肯定能将她救出。
现据密探所报,公主被关在一个两层的迷宫里,迷宫的入口是S(0,0,0),公主的位置用P表示,时空传输机用#表示,墙用*表示,平地用.表示。骑士们一进入时空传输机就会被转到另一层的相对位置,但如果被转到的位置是墙的话,那骑士们就会被撞死。骑士们在一层中只能前后左右移动,每移动一格花1时刻。层间的移动只能通过时空传输机,且不需要任何时间。

Input
输入的第一行C表示共有C个测试数据,每个测试数据的前一行有三个整数N,M,T。 N,M迷宫的大小NM(1 <= N,M <=10)。T如上所意。接下去的前NM表示迷宫的第一层的布置情况,后N*M表示迷宫第二层的布置情况。

Output
如果骑士们能够在T时刻能找到公主就输出“YES”,否则输出“NO”。

Sample Input
1
5 5 14
S*#*.
.#…
…
****.
…#.

….P
#.
…
**…
…
.
*.#…

Sample Output
YES

Source
HDU 2007-6 Programming Contest

Recommend
xhd

暴力bfs,注意下列情况:
1.两个传送门会卡进去
2.直接传送到公主头上

#include<bits/stdc++.h>
using namespace std;
char mp[2][11][11];
int vis[2][11][11];
int dy[4]={0,0,1,-1};
int dz[4]={1,-1,0,0};
int n,m,t;
struct node{
    int x,y,z;
    node(){}
    node(int a,int b,int c){x=a;y=b;z=c;}
    bool operator ==(const node &a)const{
        return x==a.x&&y==a.y&&z==a.z;
    }
}ed;
inline int *getvis(node &st){return &vis[st.x][st.y][st.z];}
inline void setvis(node &st,int p){*getvis(st)=p;}
int bfs(node st){
    memset(vis,-1,sizeof vis);
    setvis(st,0);
    queue<node>mq;
    mq.push(st);
    while(!mq.empty()){
        node nw=mq.front();
        mq.pop();node q;
        int step=*getvis(nw);
        if(nw==ed)return step;
        if(step==t)continue;
        for(int i=0;i<4;i++){
            q.y=nw.y+dy[i];
            q.z=nw.z+dz[i];
            q.x=nw.x;
            if(q.y<0||q.y>=n||q.z<0||q.z>=m)continue;
            if(mp[q.x][q.y][q.z]=='#')q.x^=1;
            if(mp[q.x][q.y][q.z]=='.'||mp[q.x][q.y][q.z]=='P'){
                if(*getvis(q)==-1){
                    mq.push(q);
                    setvis(q,step+1);
                }
            }
        }
    }
    return 0;
}
int  main(){
    int T;
    scanf("%d",&T);
    while(T--){
        scanf("%d%d%d",&n,&m,&t);
        for(int i=0;i<2;i++){
            for(int j=0;j<n;j++){
                scanf("%s",mp[i][j]);
                for(int k=0;k<m;k++){
                    if(mp[i][j][k]=='P'){
                        ed.x=i;
                        ed.y=j;
                        ed.z=k;
                    }
                }
            }
        }
        if(bfs(node(0,0,0)))puts("YES");
        else puts("NO");
    }
    return 0;
}

uniapp(全端兼容) - 最新详细uniapp全平台植入使用echarts图表插件,引入 Echarts 图表及使用详细教程,提供各种图表使用示例(拒绝复杂的过程,附带详细的使用示例保姆级教程) uniapp 微信小程序 echats 图表,uni-app小程序引用echarts,niapp 微信小程序引入echats教程,uniapp 使用echats图表,uniapp开发如何在微信小程序平台使用echats图表,uniapp开发的小程序中怎么用echats,在uni-app中编译到微信小程序如何使用echarts,UNIAPP微信小程序使用Echarts,uni-app微信小程序使用echarts,Uniapp小程序端使用echarts最详细的教程,uni-app中使用Echarts绘画图表,u 阅读详情

相关推荐

把对讲门铃(控制底楼铁门)接入米家服务器

今天讲个跟SDR或者无人机无关的东西,技术含量不高,但是方便了我的生活。 现在家门有智能锁,汽车也可以远程解锁发动,NFC门禁也可以用某些手机复制,唯独楼下的铁门,必须用老式对讲门铃控制。 也就是说其它钥匙都可以不带,就剩这个钥匙还必须随身携带。 另外有时候人不在家,不能开楼下铁门,快递员也没法把东西送上楼。 ......

老邵的开源世界 6551

HDOJ2102(A计划) bfs

A计划Time Limit: 3000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1412Accepted Submission(s): 291 Problem Description 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再...

weixin_30685029的博客 505

基于FLUENT的圆柱绕流数值模拟与流场优化策略

本文详细介绍了基于FLUENT的圆柱绕流数值模拟方法与流场优化策略。从基础概念、建模技巧到湍流模型选择,全面解析了圆柱绕流模拟的关键技术,并提供了实用的网格划分和参数设置建议。通过具体案例展示了流动控制方法和优化流程,帮助工程师有效降低阻力系数,提升流场性能。

f6g7h8i9j的博客 706

hdu A计划

这道题是一道bfs的题目,因为题目中给的数据很小,所以可以采用优先队列的方式来简化处理。这道题在搜索的过程中要注意map1的不同层次的转换,即对'#'的理解。之前wa了两次是因为我考虑了如果上下两层对应位置都是'#'时输出'NO’,但是这是错误的,可以不考虑这个问题,也可以当上下两层都是‘#’时将它们赋成‘*’; 具体步骤看程序及程序上的注释: #include"iostream" ...

weixin_34007020的博客 195

华为HCIA-Datacom实战:200人企业园区网从规划到部署全流程解析

本文详细解析了华为HCIA-Datacom认证实战中200人企业园区网的规划与部署全流程。从需求分析、组网架构设计到设备选型、VLAN划分及安全策略实施,全面覆盖园区网建设的关键环节,特别针对部门隔离、无线覆盖和基础安全防护等典型场景提供可落地的解决方案。

f0g1h2的博客 711

从原理图到PCB:基于Allegro的8槽PXIe背板高速设计实战

本文详细介绍了基于Allegro软件进行8槽PXIe背板高速设计的完整实战流程。从理解规范、原理图设计、PCB布局规划,到高速PCIe差分对与精密时钟的布线艺术,再到电源与地处理以及最终的设计验证与生产文件输出,系统性地阐述了确保背板信号完整性、电源完整性和系统稳定性的关键技术与工程实践。

weixin_28312391的博客 207

hdu2102(深搜)

可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验。魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的肉也能长生不老。年迈的国王正是心急如焚,告招天下勇士来拯救公主。不过公主早已习以为常,她深信智勇的骑士LJ肯定能将她救出。 现据密探所报,公主被关在一个两层的迷宫里,迷宫的入口是S(0,0,0),公主的位置用P表示,时空传输机用#表示,墙用*表示...

qq_44238714的博客 337

告别抓包:一个Xposed模块教你监控抖音App的本地数据变化

本文详细介绍了如何利用Xposed框架开发模块,实现抖音App本地数据监控的技术方案。通过Hook关键方法,开发者可以实时获取用户信息、推荐算法参数等核心数据,无需Root设备即可高效调试。文章包含完整的环境配置、代码实现和优化技巧,为移动应用开发与测试提供创新解决方案。

weixin_27015733的博客 385

杭电oj 2102 A计划

Problem Description 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验。魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的肉也能长生不老。年迈的国王正是心急如焚,告招天下勇士来拯救公主。不过公主早已习以为常,她深信智勇的骑士LJ肯定能将她救出。 现据密探所报,公主被关在一个两层的迷宫里,迷宫的入口是S(0,0,0),公主的位置用...

qiaomm的个人博客 685

IDEA 2023最新破解教程:从安装到永久激活(附常见问题解决方案)

本文为Java开发者提供了一份详尽的IntelliJ IDEA 2023高效使用指南。内容涵盖从版本选择、安装配置到核心快捷键、项目依赖管理、高级调试测试以及插件生态的深度优化。旨在帮助用户在合法合规的前提下,充分发挥这款顶级IDE的潜力,显著提升Java开发效率与工作体验。

time3的博客 3376

fluent linux运行算例,Fluent算例精选|03利用VOF和蒸发-冷凝模型

通过学习本算例您将获得?1、学会基本的VOF模型设置流程2、学会利用蒸发-冷凝模型来模拟传热沸腾目录1摘要42传热沸腾模型介绍43前处理44求解设置54.1启动Fluent54.2网格缩放64.3求解器设置74.4多相流模型设置84.5能量方程求解设置94.6紊流模型设置104.7添加材料114.8多相流中相设置124.9操作条件设置144.10边界条件设置154.10.1heatsource边界...

weixin_33278819的博客 3186

A计划 HDU - 2102(题解)

A计划 HDU - 2102(题解) 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验。魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的肉也能长生不老。年迈的国王正是心急如焚,告招天下勇士来拯救公主。不过公主早已习以为常,她深信智勇的骑士LJ肯定能将她救出。 现据密探所报,公主被关在一个两层的迷宫里,迷宫的入口是S(0,0,0),公主的位置用P表示,时空传输机用#表示,墙用表示,平地用.表示。骑士们一进入时空传输机就会被转到另一层的相对位置,但如果被转到

wangjunjie_123的博客 733

基于matlab的阈值分割的车牌定位识别系统

车牌自动识别模块是现代社会智能交通系统(ITS)的重要组成部分,是图像处理和模式识别技术研究的热点,具有非常广泛的应用。车牌识别主要包括以下三个主要步骤:车牌区域定位、车牌字符分割、车牌字符识别。本案例通过对采集的车牌图像进行灰度变换、边缘检测、腐蚀及平滑等过程进行车牌图像预处理,并由此得到一种基于车牌颜色纹理特征的车牌定位方法,最终实现了车牌区域定位。车牌字符分割是为了方便后续对车牌字符进行匹配,从而对车牌进行识别。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 970

HDU 2102 A计划(两层地图的bfs)

传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2102 A计划 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 28972    Accepted Submission(s): 72...

Y先森0.0 211

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

HDU-2102 A计划 (BFS)详解

HDU-2102 A计划 (BFS)详解

qwertf123的博客 1005

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

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

HDU2102:A计划(BFS)

HDU2012:A计划 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验。魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的肉也能长生不老。年迈的国王正是心急如焚,告招天下勇士来拯救公主。不过公主早已习以为常,她深信智勇的骑士LJ肯定能将她救出。

Kaidge的博客 361

VC中sqlite的使用

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

hdu 2102 A计划 bfs

题意:中文题目,容易看懂,之前把题意给理解错了,认为走进传输机可以选择传送或是不传送,看了题解才知道没得选,走进去就相当于传输,如果上下两层都是时空传输机,或是传送的目的地是墙壁,则不能走进传输机,前者会造成无限传送,后者会撞死。所以要禁止这种情况,将它们视作墙壁即可。 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2102 #include #

chen_minghui的博客 614

HDU 2102 A计划 BFS

/* --------------------------------------------------- ACMer : johnsondu Time : 21:20 - 21:55, 2012.2.12 stratege : easy BFS *************************************************** P

小do在努力 878

HDU2102 A计划 —— BFS

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2102 A计划 Time Limit: 3000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 24298Accepted Su...

weixin_30375247的博客 71

hdu 2102 A计划bfs

传送门:hdu2102 题意中能够在T时刻找到公主就是T时刻以内找到公主,因为打不了你可以在一个格子里多呆几秒嘛。。 典型广搜,book数组和入队条件稍微改动一下即可。#include #include #include #include using namespace std; int n,m,T; int ef,er,ec; int go[4][2]={0,1,1,0,0,-1,-

WA是一笔财富 329

HDU 2102 A计划 BFS求解

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2102 题意简单,救公主,但是许多细节需要处理,看着数据比较小,又不是求最小时间量,第一反应就是DFS,因为DFS的代码量一般比较小,可惜TLE了,技术不够啊! 1,当两边都是#时,不能过去,当对面是*时,不能过去 2,不能认为只有这边是#,对面是 . 是才能过去,因为存在对面为P是的特殊

catch_catch的专栏 531

HDU - 2102 A计划 【BFS】

题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=2102 思路 题目有两个坑点 0.Output 说 能在T时刻 找到公主 就输出 YES 但实际上 只要在T时刻或者T时刻之前找到就可以了 1.如果传输机另一边 是 墙 那么就会被撞死 那如果另一边也是传输机 那么也是就会传来传去 也是行不通的 ...

banshen0201的博客 103

hdu 2102 A计划 BFS

思路:BFS坑点:传送门必须是’P’或者’.’才可以过去,否则都是死。 http://acm.hdu.edu.cn/showproblem.php?pid=2102 /* Problem : hdu 2102 Author : NMfloat InkTime (c) NM . All Rights Reserved . */#include <map> #include

NM的专栏 550

hdu2102 A计划【BFS】

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2102 题意:中文题 解析:很简单的bfs,但是题目有个很奇葩的设定,那个时光机,你踩上去一定会传到另一层,那么如果你的另一边也是时光机的话,那你就拉闸了,这种情况确实很无语,注意下这个坑点,其他都跟普通的走迷宫没区别#include <bits/stdc++.h> using namespace s

22h's Blog 408

HDU2102 A计划 BFS简化版

Description 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验。魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的肉也能长生不老。年迈的国王正是心急如焚,告招天下勇士来拯救公主。不过公主早已习以为常,她深信智勇的骑士LJ肯定能将她救出。 现据密探所报,公主被关在一个两层的迷宫里,迷宫的入口是S(0,0,0),公主的位置用P表示,时空传...

超逸の学习技术博客 562
上一篇: hdu1067Gap(bfs)
下一篇: AABB与光线求交的判定
IDrandom
博客等级 码龄12年 31粉丝 125原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值