#aBC271E. [ABC271E] Subsequence Path
[ABC271E] Subsequence Path
AT_abc271_e [ABC271E] Subsequence Path
题目描述
某地区有 个城镇,编号为 1 到 ,并且由 条公路连接,编号 1 到 。
每条公路都是有向的;而且编号为 的道路将带领你从编号 的城镇到编号为 的城镇去,它的长度为 。
现在给你一个长度为 的正整数序列 且 。我们说一条由一些连通的公路组成的路径为“好路”,当且仅当满足以下条件:
- 这条路径的起点为 1 ,终点为 。
- 按经过顺序组成这条路径的公路的编号组成的序列是 的子序列。
注意,若序列 是长度为 的数列 的子序列,则 是数列 删除任意 个元素得到的。
现在你要找到最短的“好路”。如果没有,输出 -1 。
输入格式
一切按照以下标准输入:
$N\ M\ K\newline A_1\ B_1\ C_1\newline\vdots\newline A_M\ B_M\ C_M\newline E_1\ ...\ E_K$
输出格式
输出最短的“好路”。如果没有,输出 -1 。
输入输出样例 #1
输入 #1
3 4 4
1 2 2
2 3 2
1 3 3
1 3 5
4 2 1 2
输出 #1
4
输入输出样例 #2
输入 #2
3 2 3
1 2 1
2 3 1
2 1 1
输出 #2
-1
输入输出样例 #3
输入 #3
4 4 5
3 2 2
1 3 5
2 4 7
3 4 10
2 4 1 4 3
输出 #3
14
说明/提示
- $1\ \leq\ A_i,\ B_i\ \leq\ N,\ A_i\ \neq\ B_i\ \,\ (1\ \leq\ i\ \leq\ M)$
- $1\ \leq\ C_i\ \leq\ 10^9\ \,\ (1\ \leq\ i\ \leq\ M)$
- 所有输入都是整数
样例解释
对于样例1,有两条好路:
- 选择编号为 的公路。在这种情况下,“好路”的长度是 。
- 依次选择编号为 和 的公路。在这种情况下,“好路”的长度就变为了 。
因此,输出的期望值为 。
对于样例2,没有“好路”,输出 -1 。