POJ 2387 Til the Cows Come Home --最短路模板题
2014-03-16 22:47
411 查看
Dijkstra模板题,也可以用Floyd算法。
关于Dijkstra算法有两种写法,只有一点细节不同,思想是一样的。
写法1:
View Code
关于Dijkstra算法有两种写法,只有一点细节不同,思想是一样的。
写法1:
#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #include <algorithm> #define Mod 1000000007 using namespace std; #define N 1007 int mp ,n,m; int dis ,vis ; void Dijastra(int s) { int now; int i,k; dis[s] = 0; for(i=1;i<=n;i++) { int mini = Mod; //order 1 for(k=1;k<=n;k++) { if(dis[k] < mini && !vis[k]) { now = k; mini = dis[k]; } } vis[now] = 1; for(k=1;k<=n;k++) //order 2 { if(mp[now][k] != Mod && dis[now] + mp[now][k] < dis[k]) dis[k] = dis[now] + mp[now][k]; } } } int main() { int u,v,w,i,j; while(scanf("%d%d",&m,&n)!=EOF) { for(i=1;i<=n;i++) dis[i] = Mod; dis[1] = 0; for(i=1;i<=n;i++) { for(j=1;j<=n;j++) mp[i][j] = Mod; mp[i][i] = 0; } while(m--) { scanf("%d%d%d",&u,&v,&w); if(w < mp[u][v]) mp[u][v] = mp[v][u] = w; } memset(vis,0,sizeof(vis)); Dijastra(1); printf("%d\n",dis ); } return 0; }
View Code
相关文章推荐
- POJ 2387 Til the Cows Come Home(最短路模板)**
- POJ 2387 Til the Cows Come Home --最短路模板题
- POJ - 2387 Til the Cows Come Home(最短路Dijkstra模板题)
- 最短路模板 POJ-2387 Til the Cows Come Home
- poj 2387 Til the Cows Come Home (最短路)
- poj 2387 Til the Cows Come Home(最短路SPFA+Dijkstra)
- POJ 2387 Til the Cows Come Home【最短路】
- 【POJ 2387】Til the Cows Come Home(Dij最短路)
- POJ 2387 Til the Cows Come Home (最短路+Dijkstra)
- 第一次最短路:POJ 2387 Til the Cows Come Home(bfs方法~)
- POJ 2387 Til the Cows Come Home 【最短路(dijkstra)】
- POJ-2387 Til the Cows Come Home ( 最短路 )
- POJ-2387 Til the Cows Come Home(最短路 Dijkstra算法)
- POJ 2387 Til the Cows Come Home(最短路)
- POJ 2387 Til the Cows Come Home(最短路径,模板题)
- Til the Cows Come Home POJ - 2387 (迪杰斯特拉!模板!)
- POJ - 2387 Til the Cows Come Home (最短路)
- POJ 2387 - Til the Cows Come Home ( dijkstra求最短路 )
- POJ 2387 Til the Cows Come Home (单源最短路SPFA解法)
- POJ-2387 Til the Cows Come Home【最短路】