#495. 上班规划

上班规划

题目描述

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

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

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

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

  • 从一个点到达另一个直接相邻的点走路需要花费时间 wt \text{wt} 分钟,骑共享单车花费时间为 bt \text{bt} 分钟。

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

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

保证不存在重边和自环。

输入格式

  • 第一行给出六个整数 n,m,num,wt,bt,v n, m, \text{num}, \text{wt}, \text{bt}, \text{v} ,如题目所述。
  • 接下来一行,给出 m m 个整数,表示可以骑或停共享单车的位置。
  • 然后 num \text{num} 行,每行两个整数,表示直接相连的位置。
  • 最后一行两个整数 s s e e ,代表起点以及终点。

输出格式

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

样例输入

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

样例输出

4 0

说明

样例解释

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

数据范围

对于所有数据 1wt,bt,v103 1 \leq \text{wt}, \text{bt}, \text{v} \leq 10^3 ,其中保证 btwt \text{bt} \leq \text{wt} ,$ n - 1 \leq \text{num} \leq \min(10^6, \frac{n(n-1)}{2}) $。

测试点 n n \leq m m \leq
1,21,2 1010 n n
3,43,4 105 10^5 00
5105\sim10 105 10^5 n n