AT_abc271_e.[ABC271E] Subsequence Path
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
某地区有 N 个城镇,编号为 1 到 N ,并且由 M 条公路连接,编号 1 到 M 。
每条公路都是有向的;而且编号为 i(1≤i≤M) 的道路将带领你从编号 Ai 的城镇到编号为 Bi 的城镇去,它的长度为 Ci。
现在给你一个长度为 K 的正整数序列 E=(E1,E2,...,EK) 且 ∀i∈[1,K],Ei∈[1,M] 。我们说一条由一些连通的公路组成的路径为“好路”,当且仅当满足以下条件:
- 这条路径的起点为 1 ,终点为 N 。
- 按经过顺序组成这条路径的公路的编号组成的序列是 E 的子序列。
注意,若序列 S 是长度为 L 的数列 T 的子序列,则 S 是数列 T 删除任意 i (i∈[0,L]) 个元素得到的。
现在你要找到最短的“好路”。如果没有,输出 -1 。
输入格式
一切按照以下标准输入:
N M KA1 B1 C1⋮AM BM CME1 ... EK
输出格式
输出最短的“好路”。如果没有,输出 -1 。
输入输出样例
输入#1
3 4 4 1 2 2 2 3 2 1 3 3 1 3 5 4 2 1 2
输出#1
4
输入#2
3 2 3 1 2 1 2 3 1 2 1 1
输出#2
-1
输入#3
4 4 5 3 2 2 1 3 5 2 4 7 3 4 10 2 4 1 4 3
输出#3
14
说明/提示
- $ 2\ \leq\ N\ \leq\ 2\ \times\ 10^5 $
- $ 1\ \leq\ M,\ K\ \leq\ 2\ \times\ 10^5 $
- $ 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\ \leq\ E_i\ \leq\ M\ ,\ (1\ \leq\ i\ \leq\ K) $
- 所有输入都是整数
样例解释
对于样例1,有两条好路:
- 选择编号为 4 的公路。在这种情况下,“好路”的长度是 5 。
- 依次选择编号为 1 和 2 的公路。在这种情况下,“好路”的长度就变为了 2+2=4 。
因此,输出的期望值为 4 。
对于样例2,没有“好路”,输出 -1 。
输入解题思路,AI测评打分。不知道怎么写?