0006:floyd求最短路径 水题
来源:互联网 发布:数据录入员 编辑:程序博客网 时间:2024/05/17 00:58
0006:floyd求最短路径
- 查看
- 提交
- 统计
- 提问
- 总时间限制:
- 10000ms
- 内存限制:
- 1000kB
- 描述
给出一个有向图的结构,求所有顶点间的最短路径
- 输入
- 若干行整数,第一行有2个数,分别为顶点数v和弧数a,接下来有a行,每一行有3个数,分别是该条弧所关联的两个顶点编号和弧的权值
- 输出
- 若干行
每行第一个为一个整数,为最短路径值,其余为若干个空格隔开的顶点构成的最短路径序列(用小写字母)
若无最短路径,直接输出no answer - 样例输入
3 50 1 40 2 111 0 61 2 22 0 3
- 样例输出
4 v0 v16 v0 v1 v25 v1 v2 v02 v1 v23 v2 v07 v2 v0 v1
#include "iostream"#include "stack"using namespace std;#define Sky 9999#define Max 105int Top,Edge,Map[Max][Max]; int Path[Max][Max];void Dfs(int x,int y){ int k=Path[x][y]; if(k==-1) return; Dfs(x,k); cout<<"v"<<k<<" "; Dfs(k,y);} void Floyd(){ int i,j,k; for(k=0;k<Top;k++)for(j=0;j<Top;j++)for(i=0;i<Top;i++){ if(k==j || k==i || i==j) continue;if(Map[i][j]>Map[i][k]+Map[k][j]){Map[i][j]=Map[i][k]+Map[k][j];Path[i][j]=k;}} bool Flag=false;for(i=0;i<Top;i++)for(j=0;j<Top;j++){ if(Map[i][j]!=Sky) { Flag=true; cout<<Map[i][j]<<" "; cout<<"v"<<i<<" "; Dfs(i,j); cout<<"v"<<j<<" "<<endl; }} if(Flag==false) cout<<"no answer"<<endl; }int main(){ //freopen("1.txt","r",stdin); while(cin>>Top>>Edge && Top!=0){int i,j; for(i=0;i<Top;i++)for(j=0;j<Top;j++){Map[i][j]=Sky;Path[i][j]=-1;} for(i=1;i<=Edge;i++){ int x,y,z;cin>>x>>y>>z;Map[x][y]=z; } Floyd(); } return 0;}
0 0
- 0006:floyd求最短路径 水题
- Floyd算法求最短路径
- POJ1847 floyd求最短路径
- Floyd-求最短路径
- floyd求最短路径长度
- Floyd算法求最短路径
- Floyd算法求最短路径并记录路径
- Poj 1125 (Floyd算法求最短路径)
- 求最短路径之——Floyd算法
- 求最短路径算法之Floyd算法
- Floyd算法求最短路径,JAVA实现
- hdu 1690 Bus System Floyd 求最短路径
- HDU 1874 求最短路径 Floyd 算法
- HDU 1874 求最短路径 Floyd 算法
- [c]HDOJ1874 floyd算法求最短路径
- Floyd-Warshall多源最短路径
- 多源最短路径floyd算法
- 多源最短路径 Floyd
- Spark入门实战系列--8.Spark MLlib(上)--机器学习及SparkMLlib简介
- 《Redis设计与实现》阅读:Redis底层研究之简单动态字符串SDS
- cordova新建android工程
- Spark入门实战系列--8.Spark MLlib(下)--机器学习库SparkMLlib实战
- robot_pose_ekf 使用说明
- 0006:floyd求最短路径 水题
- Runtime 运行时:方法与消息
- SQL Server2014如何打开协议
- VS2015 COM 编译报权限错误
- java.lang.IllegalStateException的解决方向
- Spark入门实战系列--9.Spark图计算GraphX介绍及实例
- activiti modeler在线编辑器中文汉化
- java实现并查集
- unity 计算两点角度