弗洛伊德
2018-03-13 13:34
176 查看
ccf201712-4,赋权图的变种,没想明白,只写了 弗洛伊德算法,得了30分。
#include<stdio.h> #include<stdlib.h> #include<math.h> int matrice[520][520]; int path[520][520]; int dis[520]; int main() { int n, m; scanf("%d%d", &n, &m); int a, b, c, d; for (int i = 1; i <= n; i++) { for (int j = 1; j <= n; j++) { matrice[i][j] = 200000; path[i][j] = j; } } for (int i = 1; i <= m; i++) { scanf("%d%d%d%d", &a, &b, &c, &d); matrice[b][c] = d; matrice[c][b] = d; dis[b + c] = a; } int i, j, k; for (k = 1; k <= n; k++) { for (i = 1; i <= n; i++) { for (j = 1; j <= n; j++) { if (matrice[i][j] > matrice[i][k] + matrice[k][j]) { matrice[i][j] = matrice[i][k] + matrice[k][j]; path[i][j] = path[i][k]; } } } } //k = path[1] ; //printf("1\n"); //while (k != n) //{ //printf("%d\n",k); // k = path[k] ; //} //printf("%d\n", n); printf("%d\n", matrice[1] ); return 0; }
相关文章推荐
- [好文收藏]弗洛伊德的冰山理论
- pku2391 最大流,二分答案,弗洛伊德
- 动态规划---->每对定点之间的最短路径 Floyd(弗洛伊德)算法
- 最短路(弗洛伊德——最短路)
- 看数据结构写代码(48) 弗洛伊德最短路径
- 最短路径算法—Floyd(弗洛伊德)算法分析与实现(Python)
- 最短路(弗洛伊德)——hdu2544
- 数据结构看书笔记(十)—— 求最短路径问题之--迪杰斯特拉(Dijkstra)算法和弗洛伊德(Floyd)算法
- 【算法】最短路径-弗洛伊德(Floyd-Warshall)
- 判断弗洛伊德/FLOYD算法是不是有负环的
- 最短路径算法------------弗洛伊德最短路径
- 弗洛伊德仍然在我们当中
- A* + 弗洛伊德 算法 打造 360 向寻路 - [ActionScript3.0]
- 动态规划---->每对定点之间的最短路径 Floyd(弗洛伊德)算法
- Heavy Cargo(弗洛伊德——最小生成树)
- C# 弗洛伊德(Floyd)算法
- Leetcode 202 Happy Number 弗洛伊德判环解循环
- 弗洛伊德(Floyd)算法
- AC日记——产生数 codevs 1009 (弗洛伊德)(组合数学)
- 弗洛伊德算法得到图中任意两个顶点之间的最短路径