#P2901. [USACO08MAR] Cow Jogging G
[USACO08MAR] Cow Jogging G
题目描述
贝西终于尝到了懒惰的后果,决定每周从谷仓到池塘慢跑几次来健身。当然,她不想跑得太累,所以她只打算从谷仓慢跑下山到池塘,然后悠闲地散步回谷仓。
同时,贝西不想跑得太远,所以她只想沿着通向池塘的最短路径跑步。一共有 条道路,其中每一条都连接了两个牧场。这些牧场从 到 编号,如果 ,则说明牧场 的地势高于牧场 ,即下坡的道路是从 通向 的, 为贝西所在的牛棚(最高点), 为池塘(最低点)。
然而,一周之后,贝西开始对单调的路线感到厌烦,她希望可以跑不同的路线。比如说,她希望能有 种不同的路线。同时,为了避免跑得太累,她希望这 条路线是从牛棚到池塘的路线中最短的 条。如果两条路线包含的道路组成的序列不同,则这两条路线被认为是不同的。
请帮助贝西算算她的训练强度,即将牧场网络里最短的 条路径的长度分别算出来。你将会被提供一份牧场间路线的列表,每条道路用 表示,意为从 到 有一条长度为 的下坡道路。
输入格式
第一行三个用空格分开的整数 ,其中 。
第二行到第 行每行有三个用空格分开的整数 ,描述一条下坡的道路。
输出格式
共 行,在第 行输出第 短的路线长度,如果不存在则输出 。如果出现多种有相同长度的路线,务必将其全部输出。
5 8 7
5 4 1
5 3 1
5 2 1
5 1 1
4 3 4
3 1 1
3 2 1
2 1 1
1
2
2
3
6
7
-1
提示
样例 1 解释
这些路线分别为 、、、、 和 。
数据规模与约定
对于全部的测试点,保证 ,,,,,