hdu 2544 最短路 Dijkstra
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2544
题目分析:比较简单的最短路算法应用。题目告知起点与终点的位置,以及各路口之间路径到达所需的时间,要求输出起点到终点的最短时间。
- /*
- 最短路
- Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
- Total Submission(s): 35043 Accepted Submission(s): 15173
- Problem Description
- 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?
- Input
- 输入包括多组数据。每组数据第一行是两个整数N、M(N<=100,M<=10000),N表示成都的大街上有几个路口,标号为1的路口是商店所在地,标号为N的路口是赛场所在地,M则表示在成都有几条路。N=M=0表示输入结束。接下来M行,每行包括3个整数A,B,C(1<=A,B<=N,1<=C<=1000),表示在路口A与路口B之间有一条路,我们的工作人员需要C分钟的时间走过这条路。
- 输入保证至少存在1条商店到赛场的路线。
- Output
- 对于每组输入,输出一行,表示工作人员从商店走到赛场的最短时间
- Sample Input
- 2 1
- 1 2 3
- 3 3
- 1 2 5
- 2 3 5
- 3 1 2
- 0 0
- Sample Output
- 3
- 2
- Source
- UESTC 6th Programming Contest Online
- */
- //单源最短路 Dijkstra
- #include <cstdio>
- #include <cstring>
- #define INF 0xfffff
- const int maxn = + ;
- int w[maxn][maxn], n, m, d[maxn], v[maxn];
- void init()
- {
- memset(v, , sizeof(v));
- for(int i = ; i <= n; i++) d[i] = (i == ? : INF);
- for(int i = ; i <= n; i++)
- for(int j = ; j <= n; j++)
- w[i][j] = INF;
- }
- int Min(int a, int b)
- {
- return a > b ? b : a;
- }
- void dijkstra()
- {
- for(int i = ; i < n; i++){
- int x, l = INF;
- for(int y = ; y <= n; y++) if(!v[y] && d[y] <= l) l = d[x = y];
- v[x] = ;
- for(int y = ; y <= n; y++) d[y] = Min(d[y], d[x] + w[x][y]);
- }
- }
- int main()
- {
- int a, b, c;
- while(~scanf("%d%d", &n, &m)){
- if(n == && m == ) break;
- init();
- for(int i = ; i < m; i++){
- scanf("%d%d%d", &a, &b, &c);
- w[a][b] = w[b][a] = c;
- }
- dijkstra();
- printf("%d\n", d[n]);
- }
- return ;
- }
hdu 2544 最短路 Dijkstra的更多相关文章
- ACM: HDU 2544 最短路-Dijkstra算法
HDU 2544最短路 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Descrip ...
- HDOJ/HDU 2544 最短路---dijkstra算法
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2544 这题的思路可以见这里(同一类型):http://blog.csdn.net/xiaozhuaix ...
- HDU 2544最短路dijkstra模板题
最短路 Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...
- HDU 2544 最短路(dijkstra+邻接矩阵)
( ̄▽ ̄)" #include<iostream> #include<cstdio> using namespace std; const int INF=10e7; ...
- HDU - 2544最短路 (dijkstra算法)
HDU - 2544最短路 Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以 ...
- UESTC 30 &&HDU 2544最短路【Floyd求解裸题】
最短路 Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...
- HUD.2544 最短路 (Dijkstra)
HUD.2544 最短路 (Dijkstra) 题意分析 1表示起点,n表示起点(或者颠倒过来也可以) 建立无向图 从n或者1跑dij即可. 代码总览 #include <bits/stdc++ ...
- (重刷)HDU 1874 畅通工程续 + HDU 2544 最短路 最短路水题,dijkstra解法。
floyd解法 今天初看dijkstra,先拿这两题练手,其他变形题还是不是很懂. 模版题,纯练打字... HDU 1874: #include <cstdio> #define MAXN ...
- hdu 2544 最短路
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=2544 最短路 Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shi ...
随机推荐
- [Angular2 Form] Display Validation and Error Messaging in Angular 2
Angular 2’s ngModel provides error objects for each of the built-in input validators. You can access ...
- MySQL优化---DBA对MySQL优化的一些总结
非原创, 来自梦嘉朋友, 非常好的总结, 一起学习. ------------------------------------------------- 1. 要确保有足够的内存数据库能够高效的运 ...
- Linux服务器集群系统(一)--转
引用地址:http://www.linuxvirtualserver.org/zh/lvs1.html LVS项目介绍 章文嵩 (wensong@linux-vs.org)2002 年 3 月 本文介 ...
- JS概念
1.This(当前方法属于谁,this就属于谁) http://www.cnblogs.com/yanhaijing/p/3685309.html#undefined
- JavaEE&Docker 容器示例
准备:jboss.jdk.一个javaee的war包.Dockerfile 注:jboss和jdk可以不用提前准备好,在命令中wget也可以,因为我恰好有,就直接复制了 Dockerfile内容: # ...
- C# 制作透明窗体
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- vba用http发送xml所需技术
1.代理(invoke) CallByName 函数 •执行一个对象的方法,或者设置或返回一个对象的属性. •语法 •CallByName(object, procname, calltype,[ar ...
- C#面向对象(四)虚方法实现多态
一.虚方法实现多态 1,创建一个people基类 using System; using System.Collections.Generic; using System.Linq; using Sy ...
- Linux 查看物理内存
free -k free -m free -b man free cat /proc/meminfo
- iOS 应用首次开启 出现引导页面
关于引导页面 ,可以是独立的一个视图控制器控制的滚动视图. 重点是处理 如何判断app是首次开启 而调用这个视图控制器得方法. 逻辑如下: -(BOOL)isFirstLoad { if(!标记第一次 ...