POJ, 3255 Roadblocks(次短路径)
来源:互联网 发布:淘宝水族箱品牌排行榜 编辑:程序博客网 时间:2024/06/05 05:16
题意:求1到n的次短路径。
分析:dijistra算法,每次记录最短距离和次短距离。
#include <iostream>#include<vector>#include<queue>#include<cstdio>using namespace std;#define N 10005#define INF 0x7fffffffstruct edge{ int to,cost; edge(){} edge(int x,int y) { to=x; cost=y; }};typedef pair<int,int>p;int d[N];int d1[N];vector<edge>v[N];void dijkstra(int s);int n,r;int main(){ while(~scanf("%d%d",&n,&r)) { for(int i=0;i<n;i++) { v[i].clear(); } int a,b,c; for(int i=0;i<r;i++) { scanf("%d%d%d",&a,&b,&c); v[a-1].push_back(edge(b-1,c)); v[b-1].push_back(edge(a-1,c)); } dijkstra(0); printf("%d\n",d1[n-1]); } return 0;}void dijkstra(int s){ priority_queue<p,vector<p>,greater<p> >que; fill(d,d+n,INF); fill(d1,d1+n,INF); d[s]=0; que.push(p(0,s)); while(!que.empty()) { p p1=que.top(); que.pop(); int dd=p1.first; int t=p1.second; if(dd>d1[t])continue; for(int i=0;i<v[t].size();i++) { edge &e=v[t][i]; int d2=dd+e.cost; if(d[e.to]>d2) { swap(d[e.to],d2); que.push(p(d[e.to],e.to)); } if(d1[e.to]>d2&&d[e.to]<d2) { d1[e.to]=d2; que.push(p(d1[e.to],e.to)); } } }}
0 0
- POJ, 3255 Roadblocks(次短路径)
- POJ 3255 Roadblocks --次短路径
- POJ 3255 Roadblocks (次短路径 + Dijkstra算法)
- hdu 6181 Two Paths(次短路径长度)POJ 3255 Roadblocks ( 次短路长度)
- [POJ](3255)Roadblocks---- 最(次)短路径(邻接表+dijkstra优先队列优化)
- poj3255 Roadblocks (次短路径问题)
- 【USACO】2006 Nov Roadblocks 次短路径
- poj 3255(次短路径)
- POJ 题目3255Roadblocks(次短路)
- POJ 3255 Roadblocks(次短路)
- POJ 3255 Roadblocks(次短路)
- poj 3255 Roadblocks(次短路)
- POJ 3255 Roadblocks (次短路问题)
- POJ 3255 Roadblocks(次短路)
- POJ 3255 Roadblocks(次短路)
- POJ 3255 Roadblocks 次短路
- POJ 3255 Roadblocks 次短路
- POJ 3255 Roadblocks 次短路
- Spring整合MyBatis
- LocalBroadcastManager源码解析
- PyQt基础第3篇——自定义窗口(隐藏最大最小化按钮)
- The following classes could not be found: - android.support.v7.internal.app.WindowDecorActionBar
- HDU-1213-How Many Tables(并查集)
- POJ, 3255 Roadblocks(次短路径)
- Java EE中关于配置文件web.xml杂谈一
- bzoj 4436: [Cerc2015]Kernel Knights
- 可删除某些字符的最长回文字符串(2016腾讯在线笔试题)
- jsp中EL表达式
- 网站评论功能数据库设计和开发
- Matlab CV ToolBox的使用之matchFeatures
- 第十一周项目1.1—点 圆 圆柱类族的设计
- swift 学习笔记之闭包