1030 Travel Plan [Dijkstra]
最短路板题~想看dijkstra可以看一下另一篇。传送门https://www.cnblogs.com/FTA-Macro/p/10499725.html
#include <bits/stdc++.h> #define maxn 505 #define INF 0x3f3f3f3f using namespace std; typedef long long ll; int n,m,u,v,w,c,st,en; int vis[maxn],dis[maxn],co[maxn],path[maxn]; int ma[maxn][maxn],cost[maxn][maxn]; void dijkstra(int s) {memset(vis,0,sizeof(vis));memset(dis,INF,sizeof(dis));memset(co,INF,sizeof(co));dis[s]=0;co[s]=0;path[s]=-1;while(true){int u=-1,minn=INF;for(int i=0;i<n;i++){if(!vis[i]&&dis[i]<minn){u=i;minn=dis[i];}}if(u==-1)break;vis[u]=1;for(int i=0;i<n;i++){if(dis[i]>dis[u]+ma[u][i]){dis[i]=dis[u]+ma[u][i];co[i]=co[u]+cost[u][i];path[i]=u;}else if(dis[i]==dis[u]+ma[u][i]){if(co[i]>co[u]+cost[u][i]){co[i]=co[u]+cost[u][i];path[i]=u;}}}} } void display(int x) {if(path[x]==-1){printf("%d ",x);return;}display(path[x]);printf("%d ",x);return; } int main() {memset(ma,INF,sizeof(ma));memset(cost,INF,sizeof(cost));scanf("%d %d %d %d",&n,&m,&st,&en);for(int i=0;i<m;i++){scanf("%d%d%d%d",&u,&v,&w,&c);ma[u][v]=ma[v][u]=w;cost[u][v]=cost[v][u]=c;}dijkstra(st);display(en);printf("%d %d\n",dis[en],co[en]);return 0; }
View Code
转载于:https://www.cnblogs.com/FTA-Macro/p/10592572.html
1030 Travel Plan [Dijkstra]相关推荐
- PAT甲级1030 Travel Plan (30分):[C++题解]dijkstra求单源最短路、保存路径
文章目录 题目分析 题目链接 题目分析 来源:PAT网站 分析 dijkstra模板默写过来,然后多了一个保存路径,使用数组pre[N]记录最短路上每个点的前驱,通过pre数组保存到vector中 v ...
- 1030 Travel Plan(甲级)
1030 Travel Plan (30分) A traveler's map gives the distances between cities along the highways, toget ...
- 【PAT】【spfa + dfs】1030 Travel Plan (30 分)
题目链接:1030 Travel Plan (30 分) A traveler's map gives the distances between cities along the highways, ...
- PAT甲级 1030 Travel Plan
PAT甲级 1030 Travel Plan 题目链接 A traveler's map gives the distances between cities along the highways, ...
- 1030 Travel Plan (30 分) 【难度: 中 / 知识点: 最短路】
https://pintia.cn/problem-sets/994805342720868352/problems/994805464397627392 先跑一下Dijkstra() 然后再dfs( ...
- 1030 Travel Plan (30 分)
题目链接: PTA | 程序设计类实验辅助教学平台千名教师建设,万道高质量题目,百万用户拼题的程序设计实验辅助教学平台https://pintia.cn/problem-sets/9948053427 ...
- 【讲解】1030 Travel Plan (30 分)【DFS】_41行代码Ac
立志用最少的代码做最高效的表达 PAT甲级最优题解-->传送门 A traveler's map gives the distances between cities along the hig ...
- 1030 Travel Plan (30分)(俺是个粗人)
就保存所有的路径,找出最短最便宜的叭 #include<iostream> #include<vector> #include<limits.h> using na ...
- 1030 Travel Plan(超级无敌详细注释+47行代码)
分数 30 全屏浏览题目 切换布局 作者 CHEN, Yue 单位 浙江大学 A traveler's map gives the distances between cities along the ...
- 以未来式计算机为题目的作文,一般将来时:my travel plan为题作文
满意答案 z4255621 2016.06.12 采纳率:43% 等级:12 已帮助:10511人 找了两则,供您参考.希望有所帮助哈. My Travel Plan--01 I have a ...
最新文章
- 一张图,看清人体触碰禁区
- 在 CentOS7 安装 ELK【转】
- 关于curl: (2) Failed Initialization
- coloros基于java_基于Android 11 ColorOS 11海外版亮点一图抢先看:9月24日国内发布
- python 内置递归
- 存储过程能用if not exist_C++核心准则T.48:如果不能用概念,用enable_if
- 测试常用工具下载地址,LR11、QC11
- 搜狗输入法Android5.1,ESXI 服务器断电之后一直 LOADING MODULE IPMI_SI_DRV 的解决办法...
- 【网络】无法解析服务器的DNS地址?;能登陆QQ,无法打开网页
- 【综述阅读】Ad hoc网络路由相关的几篇综述
- RTOS osDelay和taskDelay关系
- [译] 如何在 keras 中使用循环神经网络创作音乐
- 第六章 PCB 的 DRC 检查、拼版设计及资料输出
- 智能机器人及其应用ppt课件_3D机器视觉在智能机器人拆垛中的应用
- ⭐️UI自动化控制微信发送或转发图片消息✨
- Lua踩坑记录(持续更新)
- VisionPro二次开发——C#计算旋转中心
- 自动更改mac地址 ip计算机名的软件,根据MAC地址自动更改计算机名IP的批处理
- JavaScript Errors 指南
- Idea如何配置svn或集成svn。