1381:城市路(Dijkstra)

时间限制: 1000 ms 内存限制: 65536 KB
提交数: 2710 通过数: 772
【题目描述】
罗老师被邀请参加一个舞会,是在城市n,而罗老师当前所处的城市为1,附近还有很多城市2~n-1,有些城市之间没有直接相连的路,有些城市之间有直接相连的路,这些路都是双向的,当然也可能有多条。

现在给出直接相邻城市的路长度,罗老师想知道从城市1到城市n,最短多少距离。

【输入】
输入n, m,表示n个城市和m条路;

接下来m行,每行a b c, 表示城市a与城市b有长度为c的路。

【输出】
输出1到n的最短路。如果1到达不了n,就输出-1。

【输入样例】
5 5
1 2 20
2 3 30
3 4 20
4 5 20
1 5 100
【输出样例】
90
【提示】
【数据规模和约定】

1≤n≤2000

1≤m≤10000

0≤c≤10000

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
long long g[2501][2501];
long long d[2501];
bool v[2501];
int main()
{long long n,m;cin>>n>>m;fill_n(d,2502,999999);memset(g,0x7f,sizeof(g));for(long long i=1;i<=m;i++){long long x,y,z;cin>>x>>y>>z;g[x][y]=g[y][x]=min(z,g[x][y]);}d[1]=0;for(long long i=1;i<=n;i++){long long x,minn=999999;for(long long j=1;j<=n;j++)if(minn>=d[j]&&!v[j]){minn=d[j];x=j;}v[x]=true;for(long long j=1;j<=n;j++)d[j]=min(d[j],d[x]+g[x][j]);}if(d[n]==999999)cout<<-1;elsecout<<d[n];return 0;
}

一本通 第三部分 数据结构 第四章 图论算法 第二节 最短路径算法 1381:城市路(Dijkstra)相关推荐

  1. 第三部分 数据结构 -- 第四章 图论算法-1376:信使(msner)

    1376:信使(msner) 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 4971 通过数: 2323 [题目描述] 战争时期,前线有n个哨所,每个哨所可能会与其他若干个哨所之 ...

  2. 第三部分 数据结构 -- 第四章 图论算法-1383:刻录光盘(cdrom)

    1383:刻录光盘(cdrom) 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 2798 通过数: 1121 [题目描述] 在FJOI2010夏令营快要结束的时候,很多营员提出来 ...

  3. 第三部分 数据结构 -- 第四章 图论算法1386:打击犯罪(black)

    1386:打击犯罪(black) 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 2477 通过数: 1355 [题目描述] 某个地区有n(n≤1000)个犯罪团伙,当地警方按照他 ...

  4. 王道数据结构课代表 - 考研数据结构 第四章 串-KMP(看毛片算法) 究极精华总结笔记(C版本)

    本篇博客是考研期间学习王道课程 传送门 的笔记,以及一整年里对数据结构知识点的理解的总结.希望对新一届的计算机考研人提供帮助!!!   关于对 串 章节知识点总结的十分全面,涵括了<王道数据结构 ...

  5. Web前端开发笔记——第四章 JavaScript程序设计 第二节 变量

    目录 一.JavaScript中的注释 二.变量的命名规则 三.变量声明以及赋值 四.变量作用域 五.变量提升 一.JavaScript中的注释 JavaScript中单行注释通过"//&q ...

  6. python数据分析常用的算法_萌新向Python数据分析及数据挖掘 第三章 机器学习常用算法 第二节 线性回归算法 (上)理解篇...

    理解 以a b为变量,预测值与真值的差的平方和为结果的函数 参数学习的基本方法:找到最优参数使得预测与真实值差距最小 假设可以找到一条直线 y = ax+b 使得预测值与真值的差的平方和最小 故事 假 ...

  7. Timo学习笔记 :Python基础教程(第三版)第四章 当索引行不通时

    第四章 当索引行不通时 Timo学习笔记 :Python基础教程(第三版)第三章 使用字符串 这是word编辑的最后一章笔记,第五章开始将直接用这个模板记录. 本章笔记很少,也很简单.很多方法可以到要 ...

  8. (王道408考研操作系统)第三章内存管理-第二节3:页面置换算法2

    上接: (王道408考研操作系统)第三章内存管理-第二节2:页面置换算法1 文章目录 一:时钟置换算法(CLOCK) (1)简单时钟置换算法 (2)改进型时钟置换算法 二:页面置换算法总结 一:时钟置 ...

  9. c#二叉树 取叶子节点个数_数据结构第四章:树与二叉树(二叉树的概念、性质、特殊二叉树)...

    第四章:树与二叉树(二叉树的逻辑结构) 1.二叉树 二叉树是树结构的一种,故二叉树也是逻辑结构. 二叉树:二叉树是n(n≥0)个结点的有限集合. · 1)n=0时,二叉树为空; · 2)n>0时 ...

最新文章

  1. 车牌识别的分类器文件目录
  2. 邮件发送 --- 纯Java、JavaWeb、Spring三种实现方式
  3. 关于IT人职业道德的反思(转)
  4. aio 爬虫,去重,入库
  5. python 图片 变清晰_python实现图片变亮或者变暗的方法
  6. 为什么Nginx的性能要比Apache高得多?
  7. linux核显显示独显内容,Linux驱动显示Intel第12代核显新特性:显示状态缓存
  8. Python:实现simpson approx辛普森算法(附完整源码)
  9. ubuntu 14.04 32位设置1920x1080分辨率
  10. 1.18 Spreadsheet
  11. 【软件服务外包概论】软件服务外包概论知识点整理
  12. Ubuntu子系统上安装miniconda.sh 438、444报错
  13. 红米Note10Pro安装twrp教程
  14. java中包地作用_什么是PCB设计中的包地
  15. 最近两周我们接触到的两种线上抓娃娃机的技术实现方案(一种RTSP/一种RTMP)
  16. AMS1117-ADJ的使用
  17. L学姐北京美团测开一面二面
  18. 常用公开人脸数据集汇总,持续更新中~~
  19. ACdream 1061:郭式树
  20. 操作系统期末复习知识点总结

热门文章

  1. discuz3.4安装php,Discuz!X3.4论坛源码下载 及 全新安装教程
  2. leetcode 1534. Count Good Triplets(python)
  3. Metasploit用法大全
  4. HTMLCSS超文本标记语言编程
  5. 《阿凡达2》首周末IMAX全球票房4880万美元;康泰生物新冠疫苗纳入第二剂次加强免疫接种 | 美通企业日报...
  6. 具有对称性的信道的信道容量计算方法
  7. Qt/C++ 加载数据库出现qt_sql_default_connection提醒
  8. 如何激励自己专注学习
  9. 客户端数字证书申请指南、安装指南和备份指南
  10. android蓝牙传文件开发,Android Bluetooth文件传输