#P0496. 上班规划

上班规划

题目描述

小C 是一名打工人,他比较节省,所以他上班的通勤方式要么是走路,要么是骑共享单车。有一天他突发奇想,想知道在花费时间最少的前提下从家里到达公司的最少花费是多少。走路是不需要花钱的,但共享单车骑行时需要花费一定的费用。

简单来讲,会有 nn 个位置,编号为 1n1\sim n,保证这 nn 个位置一定联通,你需要从起始位置 ss 到达目标位置 ee

  • 首先,会给出 mm 个数字,表示在这些地方可以选择骑共享单车或者停共享单车,也可以什么都不做。

  • 接下来会有 numnum 行,每行两个整数,代表这两个位置可以互相到达。

  • 从一个点到达另一个直接相邻的点走路需要花费时间 wtwt 分钟,骑共享单车花费时间为 btbt 分钟。

  • 骑共享单车从一个点到达另一个直接相邻的点时需要花费费用 vv 元。

  • 你需要保证到达终点时,没有骑共享单车或者终点可以停共享单车,毕竟你不能车都不停就去上班吧~。

保证不存在重边和自环。

输入格式

第一行给出六个整数 n, m, num, wt, bt, vn,\ m,\ num,\ wt,\ bt,\ v,如题目所述。

接下来一行,给出 mm 个整数,表示可以骑或停共享单车的位置。

然后 numnum 行,每行两个整数,表示直接相连的位置。

最后一行两个整数 ssee,代表起点以及终点。

输出格式

输出最少的花费时间以及在花费时间最少的情况下需要花费的最少费用。

样例

5 2 4 2 1 2
1 4
1 2
2 3
3 4
4 5
1 3
4 0

提示

第一个样例中,如果我选择在一号点骑车,但由于三号点停不了,我就只能骑到四号点停车然后再走回三号点,此时花费时间为五分钟,费用花费了六块钱,不如直接从一号点走到三号点。

数据范围

对于所有数据1wt, bt, v1031\le wt,\ bt,\ v \le 10^3,其中保证btwtbt\le wtn1nummin(106, n(n1)/2)n-1 \le num \le min(10^6,\ n*(n-1)/2)

测试点 nn \leq mm\le 特殊性质
121\sim 2 1010 nn
343\sim4 10510^5 00
5105\sim 10 nn