zoj 2526
最短路问题,要求出最短路的个数。
输出一条得到JavaBean最多的最短路径
#include
#include
#define inf 0x3fffffff
int n,m,map[510][510],dp[510],mark[510],dis[510],w[510],pre[510],link[510];
int st,ed;
void dijkstra()
{int i,j,k,min;memset(mark,0,sizeof(mark));//标记房间是否走过memset(dp,0,sizeof(dp));//记录到达位置得到最多的JavaBeanmemset(pre,-1,sizeof(pre));//记录到达此房间的前一个房间memset(link,0,sizeof(link));//记录到达此位置最短路的个数for(i=0;idis[j]){min=dis[j];k=j;}}mark[k]=1;for(j=0;jdis[k]+map[k][j]||dp[j]p)map[x][y]=map[y][x]=p;}dijkstra();printf("%d %d\n",link[ed],dp[ed]);prit(ed);printf("\n");}return 0;
}
5 10 0 2
1 2 1 5 3
0 1 2
0 2 4
0 3 3
0 4 1
1 2 2
1 3 1
1 4 1
2 3 1
2 4 3
3 4 2
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
