1089: 道路重建(dij 最短路径)
来源:互联网 发布:软件项目推广方案 编辑:程序博客网 时间:2024/05/19 05:04
原题链接
1089: 最短路入门2(道路重建)
时间限制: 1 Sec 内存限制: 128 MB
提交: 196 解决: 58
[提交][状态][讨论版]
题目描述
【题意】
从前有个王国,王国有N个城市,M条道路。两个城市之间最多只有一条道路。战争过后,有D条道路被摧毁了。国王想重建道路,使得最重要的两个城市A和B互通。
你的工作就是决定重建哪些道路能使得AB相连并且重建的道路的长度总和最少。
【输入格式】
本题有多组数据。
第一行为两个整数N,M(2 < N≤100,N-1≤M≤>N*(N-1)/2),城市的编号为1、2、3…N。
下来M行,每行三个整数x,y,c(1≤x,y≤N,x≠y,0
#include<iostream>#include<queue>using namespace std;typedef pair <int ,int > P ;const int INF=1<<29;int n,m;int _map[505][505];int distra[505][505];int vis[505];int len[505];void dij(int s){ for (int i=0;i<=n;i++) { vis[i]=0; len[i]=INF; } len[s]=0; priority_queue< P,vector <P> ,greater<P> > que; que.push({len[s],s}); while(!que.empty()) { P temp=que.top(); que.pop(); int num=temp.second; if (vis[num]) continue; vis[num]=1; for (int i=1;i<=n;i++) { if (_map[num][i]!=INF) { if (len[i]>len[num]+_map[num][i]) { len[i]=len[num]+_map[num][i]; que.push({len[i],i}); } } } }}int main(){ int sum_len=0,x,y,I,J,c,D,start,last; while( cin>>n>>m)//另外,此题有多组输入 { for (int i=0;i<=n;i++) { for (int j=0;j<=n;j++) { _map[i][j]=INF; distra[i][j]=0; } } for (int i=0;i<m;i++) { cin>>x>>y>>c; _map[x][y]=_map[y][x]= c; } cin>>D; for (int i=0;i<D;i++) { cin>>I>>J; distra[I][J]=distra[J][I]=1; } cin>>start>>last; for (int i=1;i<=n;i++)//关键代码 //将没有被催毁的道路权值更新为0; { for (int j=1;j<=n;j++) { if (distra[i][j]==0&&_map[i][j]!=INF) { _map[i][j]=0; } } } dij(start); cout<<len[last]<<endl; } return 0;}
阅读全文
0 0
- 1089: 道路重建(dij 最短路径)
- Dij.......最短路径算法
- DIJ问题,最短路径
- dij 最短路径模板
- hdu 2544 最短路(最短路径)(flody、dij、dij+priority queue、bellman、spfa)
- poj 1062 (dij最短路径)
- HDU 3790 最短路径问题 dij
- hd 2544 最短路径(简单dij)
- HDU3790 最短路径问题+dij算法
- HDU 1546 Idiomatic Phrases Game(最短路径)DIJ算法
- 图论——最短路径——dij
- *浙大PAT甲级 1072 最短路径dij
- 最短路径(1)--poj2387(Dij模板题)
- 1089: 最短路入门2(道路重建)
- 九度oj 题目1008:最短路径问题 【ZJU2010考研机试题4】【dij+dfs】
- POJ 3594 Escort of Dr. Who How【最短路径Dij + 枚举】
- 【省选模拟试题】排水系统 dijkstra+最短路径树+优先队列维护(当然这个和dij的不是同一个)
- hihocoder 1089最短路径
- 【转】LinkedHashMap 与 LRUcache
- 标准C++中的string类的用法总结
- 比尔·盖茨:马斯克杞人忧天 不应为AI感到恐慌
- Spring JDBC-混合框架的事务管理
- Xcode9 新功能
- 1089: 道路重建(dij 最短路径)
- 基于Dubbo框架构建分布式服务
- 常见对象_StringBuffer的截取功能
- Pentaho PDI Job通过Gmail发邮件的设定
- 金融科技&大数据产品推荐:荣之联·风报—人工智能企业情报分析系统
- hadoop 学习笔记 一
- 【转】HashSet 和 HashMap 的比较
- 动态数组创建
- 智能指针