d[i][j]保存边<i,j>的权。
如果边<i,j>不存在,则置d[i][j]为INF。
#include<cstdio>
const int MAX=10000;
const int INF=1000000;
int d[MAX][MAX];
int floyd (int n)
{
for(int k =1 ; k <= n; k++)
{
for(int i = 1; i <= n; i++)
{
for(int j = 1; j <= n; j++)
{
if(d[i][k] + d[k][j] < d[i][j])
d[i][j] = d[i][k] + d[k][j];
}
}
}
return 0;
}
int main()
{
return 0;
}
floyd后,如果d[i][j]>=INF,则点i到点j没有路。
else点i到点j的最短路径长度为d[i][j]。
posted on 2006-10-09 00:15
beyonlin 阅读(1589)
评论(0) 编辑 收藏 引用 所属分类:
acm之路