bzoj5049 [Lydsy2017年5月月赛]导航系统

2024-01-10 02:39

本文主要是介绍bzoj5049 [Lydsy2017年5月月赛]导航系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

传送门

双向广搜+恶毒卡常。

之前没写过双向广搜,昨天打比赛时yy了一下,然后就是惨烈的

这里写图片描述

今天把邻接表改成vector就A了。。。

这里写图片描述

CODE:(白写了register和unsigned int)

#include<cstdio>
#include<vector>
#include<cstring>
using namespace std;
#define rg register
#define ui unsigned int
#define N 100005
vector<ui> point[N];
ui dis1[N],dis2[N],h1,t1,h2,t2;
ui q1[N],q2[N];
ui num;
inline ui read()
{rg ui n=0;rg char c=getchar();while(c<'0'||c>'9') c=getchar();while(c>='0'&&c<='9') n=(n<<3)+(n<<1)+c-48,c=getchar();return n;
}
inline int bfs(ui x,ui y)
{q1[++t1]=x,q2[++t2]=y;dis1[x]=dis2[y]=0;while(h1<=t1||h2<=t2){rg bool first=0;if(h2>t2||(h1<=t1&&t1-h1<t2-h2)) first=1;if(first){rg ui end=t1;while(h1<=end){rg ui tmp=q1[h1++],top=point[tmp].size();for(rg ui i=0;i<top;i++){rg ui to=point[tmp][i];if(dis1[to]>dis1[tmp]+1){if(dis2[to]<1e9) return dis1[tmp]+1+dis2[to];dis1[to]=dis1[tmp]+1;q1[++t1]=to;}}}}else{rg ui end=t2;while(h2<=end){rg ui tmp=q2[h2++],top=point[tmp].size();for(rg ui i=0;i<top;i++){rg ui to=point[tmp][i];if(dis2[to]>dis2[tmp]+1){if(dis1[to]<1e9) return dis2[tmp]+1+dis1[to];dis2[to]=dis2[tmp]+1;q2[++t2]=to;}}}}}return -1;
}
int main()
{rg ui n=read(),m=read(),k=read();for(rg ui i=1;i<=m;i++){rg ui x=read(),y=read();point[x].push_back(y);point[y].push_back(x);}while(k--){for(rg ui i=1;i<=n;i++)dis1[i]=dis2[i]=0x3f3f3f3f;h1=h2=1,t1=t2=0;printf("%d\n",bfs(read(),read()));}return 0;
}

这篇关于bzoj5049 [Lydsy2017年5月月赛]导航系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/589283

相关文章

嵌入式智能移动机器人导航系统:状态空间控制算法、路径规划算法、PID控制算法(代码示例)

一、项目概述 随着科技的发展,智能机器人在各个领域的应用越来越广泛。本文介绍一个智能移动机器人导航系统的设计与实现,旨在通过状态空间控制与约束满足算法,确保机器人在动态环境中安全、平稳地导航。该系统的主要目标是解决机器人在复杂环境中自主移动的问题,提高其导航的安全性和效率。通过本项目,用户可以了解到如何设计一个具有自主导航能力的智能机器人,并应用于服务机器人和无人机等场景。 #mermai

卫星智慧停车导航系统有哪些优势

卫星智慧停车导航系统凭借其先进的技术和创新的理念,为现代城市停车问题提供了有效的解决方案。以下是卫星智慧停车导航系统的主要优势:   一、实时性与准确性   卫星智慧停车导航系统通过集成全球卫星定位系统(GPS)和地理信息系统(GIS),能够实时、准确地定位车辆和空闲停车位的位置。这意味着驾驶员可以随时随地获取最新的停车位信息,从而避免在繁忙的城市中盲目寻找停车位,大大节省了时间和精力。

高校三维地图校内导航系统

高校三维地图校内导航系统,三维图、平面图、航拍全景VR等多方位立体展示学校全貌,精准地位智能校内导航路线规划分析,打造智慧学校园平台。。。。。。 1、地图展示模式:2.5D地图模式 15-20层级瓦片数据 平面图模式  在线高德地图 全景图模式  航拍高空全景 2、地图基本操作:放大、缩小、平移、拖动、以及建筑信息和标注点信息展示功能。 3、建筑及标注点显示:在地图上可分层分级别显示

三维地图校内导航系统解决方案

在如今的数字化时代,越来越多的学校开始实施智慧校园计划,旨在为学生和教师提供更高效、便捷的学习和教学环境。智慧校园运用互联网、大数据、人工智能等技术,对校园内各信息进行收集、整合、分析和应用,实现教学、管理、服务等多方面的智能化、高效化、便捷化。   上海懒图科技致力于为学校提供可视化智慧校园解决方案,以物联网、大数据、AI分折等技术为基础,以三维可视化特点整合智慧校园信息化系统,打通系统数据资源

校园导航系统C++

制作一个简单的大学城导航系统,根据用户指定的起点和终点,求出最短路径长度以及具体路径。 项目要求: 1)程序与数据相分离,地图中的所有数据都是从文件读入,而不是写在代码中 2)最短路径算法不能调用函数库 3)菜单界面可以循环显示,每次显示前先清屏 4)输入的起点和终点若不存在,能给出相应提示并允许重新输入(有可能多次输入都不存在) 5)能够显示两个地点的简介 6)能够根据起点和终点计算

语音导航系统:盲人出行的新领航者,实时避障让每一步都安心

&nbsp; &nbsp; &nbsp; &nbsp; 在这个日益智能化的社会,一款名为蝙蝠避障专为盲人设计的辅助应用正以其创新的语音导航系统悄然改变着视障群体的出行方式。这款应用凭借其强大的实时避障功能,成为了盲人朋友探索世界的可靠伙伴,让每一次外出都充满了信心与自由。 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;语音导航系统作为这款应用

BZOJ 4832 [Lydsy2017年4月月赛]抵制克苏恩 期望dp

Description 小Q同学现在沉迷炉石传说不能自拔。他发现一张名为克苏恩的牌很不公平。如果你不玩炉石传说,不必担心,小Q 同学会告诉你所有相关的细节。炉石传说是这样的一个游戏,每个玩家拥有一个 30 点血量的英雄,并且可以用牌 召唤至多 7 个随从帮助玩家攻击对手,其中每个随从也拥有自己的血量和攻击力。小Q同学有很多次游戏失败都是 因为对手使用了克苏恩这张牌,所以他想找到一

游戏导航系统设计研究

更多干货,上网易游戏学院app查看! https://game.academy.163.com/ssi/app/?referrer=csdn 在现实世界中,人类为了能够不迷路,创造了从四大发明之一的“指南针”到现在手机中必备的地图导航类app。而游戏(尤其是拥有较为广袤的世界的大型RPG)作为现实世界的虚拟映射,玩家同样经常需要导航系统帮助自己更好地规划目的地和前进路线,并时刻提醒自己在前

手术模拟和导航系统的开发

手术模拟和导航系统的开发需要跨越多个领域的专业知识,包括医学影像处理、计算机图形学、机器学习、人机交互等。下面是开发手术模拟和导航系统的一般步骤和关键技术,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.需求分析和设计: 确定系统的功能需求和性能指标,如手术模拟、导航、实时反馈等。 设计系统的架构和界面,考虑用户友好性和实用性。 2.医学影像获

ZZULI-医院导航系统

✅简介:与大家一起加油,希望文章能够帮助各位!!!! 💬保持学习、保持热爱、认真分享、一起进步!!!  试验任务: 请设计一个简单的医院导航系统,该医院主要有以下部门:门诊部(A)、住院部(B)、急诊部(C)、药房(D)、收费室(E)、化验室(F)、放射科(G)、手术室(H)、B超室(I)、行政楼(J),各部门之间的路径及距离如图1所示。   要求: (1)请利用C/C++/Ja