#ABC239G. 筑墙高桥

筑墙高桥

筑墙高桥

题目描述

我们有一个包含 NN 个顶点和 MM 条边的简单连通无向图。

顶点编号为顶点 11,顶点 22,\dots,顶点 NN

边编号为边 11,边 22,\dots,边 MM。边 ii 双向连接顶点 aia_i 和顶点 bib_i。不存在直接连接顶点 11 和顶点 NN 的边。

每个顶点要么是空的,要么被墙占据。最初,每个顶点都是空的。

青木君将要沿着图中的边从顶点 11 旅行到顶点 NN。但是,青木君不允许移动到被墙占据的顶点。

高桥君决定在某些顶点上建造墙,使得无论青木君走哪条路线,都无法到达顶点 NN

在顶点 ii 上建墙需要花费高桥君 cic_i 日元(日本的货币单位)。他不能在顶点 11 和顶点 NN 上建墙。

要使条件得到满足,高桥君建墙最少需要花费多少日元?同时,输出达到最小花费的建墙方案。

输入格式

输入按以下格式从标准输入给出:

N M
a_1 b_1
a_2 b_2
⋮
a_M b_M
c_1 c_2 … c_N

输出格式

按以下格式输出。这里,CC,kk,以及 pip_i 定义如下。

  • CC 是高桥君将要支付的花费
  • kk 是高桥君将要建墙的顶点个数
  • (p1,p2,,pk)(p_1,p_2,\dots,p_k) 是高桥君将要建墙的顶点序列
C
k
p_1 p_2 … p_k

如果存在多种以最小花费满足条件的建墙方案,输出其中任意一种。

样例

5 5
1 2
2 3
3 5
2 4
4 5
0 8 3 4 0
7
2
3 4

如果高桥君在顶点 33 和顶点 44 上建墙,花费 3+4=73 + 4 = 7 日元,青木君就无法从顶点 11 旅行到顶点 55

不存在花费更少的满足条件的方案,所以答案是 77 日元。

3 2
1 2
2 3
0 1 0
1
1
2
5 9
1 2
1 3
1 4
2 3
2 4
2 5
3 4
3 5
4 5
0 1000000000 1000000000 1000000000 0
3000000000
3
2 3 4

数据范围

  • 3N1003 \leq N \leq 100
  • N1MN(N1)21N - 1 \leq M \leq \frac{N(N-1)}{2} - 1
  • 1ai<biN1 \leq a_i \lt b_i \leq N (1iM)(1 \leq i \leq M)
  • (ai,bi)(1,N)(a_i, b_i) \neq (1, N)
  • 给定的图是简单且连通的。
  • 1ci1091 \leq c_i \leq 10^9 (2iN1)(2 \leq i \leq N-1)
  • c1=cN=0c_1 = c_N = 0
  • 输入中的所有值均为整数。
难度 省选/NOI-
通过率
尝试 0
已通过 0
ID
2391
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签