#L3171. 「POI2013 R1」价目表 Price List

「POI2013 R1」价目表 Price List

题目描述

题目译自 XX Olimpiada Informatyczna — I etap Cennik

给定一个 nn 个点,mm 条边的无向连通图,每条边的权值均为 aa

在原图所有满足 uu 节点和 vv 节点间最短路为 2×a2 \times a 的点对 (u,v)(u,v) 间建立一条无向边,边的权值均为 bb

给定一个起始节点 kk,求在上述操作后,kk 到所有节点的最短路径。

输入格式

第一行五个正整数:n,m,k,a,bn, m, k, a, b,表示图的点数,初始的边数,起始节点和两种边的权值。

接下来 mm 行,每行两个正整数 ui,viu_i, v_i,代表原图中的一条无向边(1ui,vin1 \leq u_i, v_i \leq nuiviu_i \neq v_i)。

保证原图连通,即在原图中从 kk 节点出发可以到达所有节点。

输出格式

输出共有 nn 行。

每行一个整数,第 ii 行的数代表操作后 kk 节点和 ii 节点间的最短路。

注意,在第 kk 行你应该输出一个整数 00

样例

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

数据范围与提示

对于 3030% 的数据,保证 2n7002 \leq n \leq 7001m7001 \leq m \leq 700

对于 100100% 的数据,保证 2n1000002 \leq n \leq 1000001m1000001 \leq m \leq 1000001kn1 \leq k \leq n1a,b10001 \leq a,b \leq 1000