#P6192. 【模板】最小斯坦纳树

    ID: 5175 Type: RemoteJudge 1000ms 250MiB Tried: 0 Accepted: 0 Difficulty: 6 Uploaded By: Tags>动态规划,dp图论状态压缩最短路

【模板】最小斯坦纳树

题目描述

给定一个包含 nn 个结点和 mm 条带权边的无向连通图 G=(V,E)G=(V,E)

再给定包含 kk 个结点的点集 SS,选出 GG 的子图 G=(V,E)G'=(V',E'),使得:

  1. SVS\subseteq V'

  2. GG' 为连通图;

  3. EE' 中所有边的权值和最小。

你只需要求出 EE' 中所有边的权值和。

输入格式

第一行:三个整数 n,m,kn,m,k,表示 GG 的结点数、边数和 SS 的大小。

接下来 mm 行:每行三个整数 u,v,wu,v,w,表示编号为 u,vu,v 的点之间有一条权值为 ww 的无向边。

接下来一行:kk 个互不相同的正整数,表示 SS 的元素。

输出格式

第一行:一个整数,表示 EE' 中边权和的最小值。

7 7 4
1 2 3
2 3 2
4 3 9
2 6 2
4 5 3
6 5 2
7 6 4
2 4 7 5

11

提示

【样例解释】

样例中给出的图如下图所示,红色点为 SS 中的元素,红色边为 EE' 的元素,此时 EE' 中所有边的权值和为 2+2+3+4=112+2+3+4=11,达到最小值。


【数据范围】

对于 100%100\% 的数据,$1\leq n\leq 100,\ \ 1\leq m\leq 500,\ \ 1\leq k\leq 10,\ \ 1\leq u,v\leq n,\ \ 1\leq w\leq 10^6$。

保证给出的无向图连通,但 可能 存在重边和自环。