最短路板题~想看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]相关推荐

  1. PAT甲级1030 Travel Plan (30分):[C++题解]dijkstra求单源最短路、保存路径

    文章目录 题目分析 题目链接 题目分析 来源:PAT网站 分析 dijkstra模板默写过来,然后多了一个保存路径,使用数组pre[N]记录最短路上每个点的前驱,通过pre数组保存到vector中 v ...

  2. 1030 Travel Plan(甲级)

    1030 Travel Plan (30分) A traveler's map gives the distances between cities along the highways, toget ...

  3. 【PAT】【spfa + dfs】1030 Travel Plan (30 分)

    题目链接:1030 Travel Plan (30 分) A traveler's map gives the distances between cities along the highways, ...

  4. PAT甲级 1030 Travel Plan

    PAT甲级 1030 Travel Plan 题目链接 A traveler's map gives the distances between cities along the highways, ...

  5. 1030 Travel Plan (30 分) 【难度: 中 / 知识点: 最短路】

    https://pintia.cn/problem-sets/994805342720868352/problems/994805464397627392 先跑一下Dijkstra() 然后再dfs( ...

  6. 1030 Travel Plan (30 分)

    题目链接: PTA | 程序设计类实验辅助教学平台千名教师建设,万道高质量题目,百万用户拼题的程序设计实验辅助教学平台https://pintia.cn/problem-sets/9948053427 ...

  7. 【讲解】1030 Travel Plan (30 分)【DFS】_41行代码Ac

    立志用最少的代码做最高效的表达 PAT甲级最优题解-->传送门 A traveler's map gives the distances between cities along the hig ...

  8. 1030 Travel Plan (30分)(俺是个粗人)

    就保存所有的路径,找出最短最便宜的叭 #include<iostream> #include<vector> #include<limits.h> using na ...

  9. 1030 Travel Plan(超级无敌详细注释+47行代码)

    分数 30 全屏浏览题目 切换布局 作者 CHEN, Yue 单位 浙江大学 A traveler's map gives the distances between cities along the ...

  10. 以未来式计算机为题目的作文,一般将来时:my travel plan为题作文

    满意答案 z4255621 2016.06.12 采纳率:43%    等级:12 已帮助:10511人 找了两则,供您参考.希望有所帮助哈. My Travel Plan--01 I have a ...

最新文章

  1. 一张图,看清人体触碰禁区
  2. 在 CentOS7 安装 ELK【转】
  3. 关于curl: (2) Failed Initialization
  4. coloros基于java_基于Android 11 ColorOS 11海外版亮点一图抢先看:9月24日国内发布
  5. python 内置递归
  6. 存储过程能用if not exist_C++核心准则T.48:如果不能用概念,用enable_if
  7. 测试常用工具下载地址,LR11、QC11
  8. 搜狗输入法Android5.1,ESXI 服务器断电之后一直 LOADING MODULE IPMI_SI_DRV 的解决办法...
  9. 【网络】无法解析服务器的DNS地址?;能登陆QQ,无法打开网页
  10. 【综述阅读】Ad hoc网络路由相关的几篇综述
  11. RTOS osDelay和taskDelay关系
  12. [译] 如何在 keras 中使用循环神经网络创作音乐
  13. 第六章 PCB 的 DRC 检查、拼版设计及资料输出
  14. 智能机器人及其应用ppt课件_3D机器视觉在智能机器人拆垛中的应用
  15. ⭐️UI自动化控制微信发送或转发图片消息✨
  16. Lua踩坑记录(持续更新)
  17. VisionPro二次开发——C#计算旋转中心
  18. 自动更改mac地址 ip计算机名的软件,根据MAC地址自动更改计算机名IP的批处理
  19. JavaScript Errors 指南
  20. Idea如何配置svn或集成svn。

热门文章

  1. XidianOJ 1096 数的拆分
  2. iOS开发之App间账号共享与SDK封装
  3. php 写入.csv文件注意点
  4. 为什么要用dubbo,dubbo和zookeeper关系,简单的dubbo搭建
  5. Java面试题超详细讲解系列之七【MySQL篇】
  6. Python 使用Protobuf(struct模块)
  7. Liunx 常用命令 学习备份
  8. oracle递归树查询
  9. redis事务冲突问题 - 乐观锁和悲观锁
  10. python gdbm_linux下python安装