Pro.ID1344 TitleAlice拜年 Title链接http://10.20.2.8/oj/exercise/problem?problem_id=1344 AC187 Submit1550 Ratio12.06% 时间&空间限制描述大年初一,Alice带上拜年礼物去给N-1位亲朋好友长辈拜年,亲友真多啊,是个大家族。由于Alice才2岁,力气不大,每次只能拿一份礼物,拜完年之后,要回家取第二份礼物,然后去下一家拜年(无语了)。为了表示对亲朋长辈的尊敬,Alice每次都从家步行去到对方家里,拜完年由爸爸骑自行车带回家(彻底无语)。可怜天下父母心啊,爸爸全程陪着Alice折腾。 假设Alice的住址编号为1,各亲朋好友的家分别编号为 2 ~ N 。这个城市的道路都是单向的(别惊奇,这个世界无奇不有),共有M条道路,每条道路长短不一。求Alice给这 N-1 个家庭拜完年,最少步行了多少路程? 输入输入的第一行是两个整数 N 和 M,1 ≤ N ≤ 1000, 1 ≤ M ≤ 100000 接下来M行,每行3个正整数 U ,V ,W ,表示该条道路是从节点U到节点V的,这条道路共有W米。满足 1 ≤ U, V ≤ N , 1 ≤ W ≤ 10000 ,保证任意两点都能互相到达。 注意本题有重边。 输出Description 大年初一,Alice带上拜年礼物去给N-1位亲朋好友长辈拜年,亲友真多啊,是个大家族。由于Alice才2岁,力气不大,每次只能拿一份礼物,拜完年之后,要回家取第二份礼物,然后去下一家拜年(无语了)。为了表示对亲朋长辈的尊敬,Alice每次都从家步行去到对方家里,拜完年由爸爸骑自行车带回家(彻底无语)。可怜天下父母心啊,爸爸全程陪着Alice折腾。 假设Alice的住址编号为1,各亲朋好友的家分别编号为 2 ~ N 。这个城市的道路都是单向的(别惊奇,这个世界无奇不有),共有M条道路,每条道路长短不一。求Alice给这 N-1 个家庭拜完年,最少步行了多少路程? Input 输入的第一行是两个整数 N 和 M,1 ≤ N ≤ 1000, 1 ≤ M ≤ 100000 接下来M行,每行3个正整数 U ,V ,W ,表示该条道路是从节点U到节点V的,这条道路共有W米。满足 1 ≤ U, V ≤ N , 1 ≤ W ≤ 10000 ,保证任意两点都能互相到达。 注意本题有重边。 Output 输出一行,包含一个整数,为Alice最少步行的路程。 Sample Input 5 10 Sample Output 28 Hint 单源最短路径算法小结 这里就不写具体算法了,只将他们的时间复杂度、适用范围、代码复杂程度简单做个比较 有些奇怪的是这个算法在《算法导论》和 Wikipedia 上竟然都没有介绍,而只在国内的OI相关网站论坛才发现的解释,大多还不是很全面。从适用范围和代码复杂程度来看绝对是一个值得推荐的算法(比熟知的Dijkstra都要好),效率上也不比使用 Heap 优化的 Dijkstra 低,一般来说甚至还要高(还有待更多题目实践验证)。即使寻找所有顶点对之间的最短路径这个算法也是值得考虑的(对每个顶点运行一次SPFA)。 Author 样例输入5 10 样例输出28 提示单源最短路径算法小结 这里就不写具体算法了,只将他们的时间复杂度、适用范围、代码复杂程度简单做个比较 有些奇怪的是这个算法在《算法导论》和 Wikipedia 上竟然都没有介绍,而只在国内的OI相关网站论坛才发现的解释,大多还不是很全面。从适用范围和代码复杂程度来看绝对是一个值得推荐的算法(比熟知的Dijkstra都要好),效率上也不比使用 Heap 优化的 Dijkstra 低,一般来说甚至还要高(还有待更多题目实践验证)。即使寻找所有顶点对之间的最短路径这个算法也是值得考虑的(对每个顶点运行一次SPFA)。 作者 |