首页 > 其他 > 详细

匈牙利游戏

时间:2016-08-09 22:11:41      阅读:385      评论:0      收藏:0      [点我收藏+]
【题目描述】

布达佩斯的街道形成了一个弯曲的单向网络。你要参加一个赛跑,比赛中你需要穿越这些街道,从s开始,到t结束。

要求写一个程序来计算一个从s到t的严格次短路线。

严格次短路线可能访问某些节点不止一次,样例2是一个例子。

【输入描述】

第一行包含两个整数N和M,N代表布达佩斯的节点个数,M代表边的个数。节点编号从1到N。1代表出发点s,N代表终点t。接下来的M行每行三个整数A、B、L,代表有一条从A到B的长度为L的单向同路。你可以认为A不等于B,也不会有重复的(A,B)对。

【输出描述】

输出从s到t的严格次短路的长度。如果从s到t的路少于2条,输出-1。

【样例输入】

样例1:

4 6

1 2 5

1 3 5

2 3 1

2 4 5

3 4 5

1 4 13

 

样例2:

2 2

1 2 1

2 1 1

【样例输出】

样例1:

11

 

样例2:

3

【数据范围及提示】

样例1:

有两条长度为10的最短路径(1 → 2 → 4,1 → 3 → 4)并且有一条长度为11的严格次短路径(1 → 2 → 3 → 4)。

 

样例2:

有一条长度为1的最短路径(1 → 2)并且有一条长度为3的严格次短路径(1 → 2 → 1 → 2)。

匈牙利游戏

原文:http://www.cnblogs.com/Ackermann/p/5754683.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!