U611911 旅行
题目描述
有一个由 $n$ 个城市 $m$ 条双向道路组成的遥远国都。你将要从城市 $1$ 出发,游览该国的 $P$ 个以旅游闻名的城市,最后到城市 $n$ 的机场回国。由于你时间有限,你需要在最短的时间内完成你的旅程,请你计算出这个时间。
输入格式
第一行两个整数 $n,m$.
接下来第 $m$ 行,每行三个整数 $x,y,w$,表示城市 $x,y$ 间有一条道路,经过这条道路需要的时间为 $w$.
第 $m+2$ 行一个整数 $P$.
第 $m+3$ 行有 $P$ 个整数,第 $i$ 个数 $p_i$ 表示你要游览的第 $i$ 个城市。
输出格式
一个整数,为完成旅行的最快时间。如无法游览全部城市或无法到达城市 $n$ 的机场,则输出 $-1$.
说明/提示
**样例说明**:按 $1\rightarrow 2\rightarrow 3$ 的路线走,可以游览城市 $2$,并以最短时间 $7$ 到达城市 $3$ (即 $n$ 号城市)。
对 $30\%$ 的数据,$1\le n\le 10,1\le m\le 100,0\le P\le 5$.
对 $100\%$ 的数据,$1\le n\le 200,1\le m\le 10000,0\le P\le 12,1\le x,y\le n,1\le w\le 10^9$.