U122682 4261. 【NOIP2015模拟10.22】最小代价

题目背景

数据存自己无聊造的,注意可能有锅!~~反正生成数据的标程在JZOJ上过了~~ ### [题解](https://www.cnblogs.com/wondering-world/p/13355129.html)

题目描述

给出一幅由$n$个点$m$条边构成的无向带权图。 其中有些点是黑点,其他点是白点。 现在每个白点都要与他距离最近的黑点通过最短路连接(如果有很多个黑点,可以选取其中任意一个),我们想要使得花费的代价最小。请问这个最小代价是多少? 注意:最后选出的边保证每个白点到离它最近的黑点的距离仍然等于原图中的最短距离。

输入格式

第一行两个整数$n$,$m$; 第二行$n$个整数,$0$表示白点,$1$表示黑点; 接下来$m$ 行,每行三个整数$x,y,z,$表示一条连接$x$和$y$ 点,权值为$z$ 的边。

输出格式

如果无解,输出$ impossible$; 否则,输出最小代价。

说明/提示

对$30$%的输入数据: $1≤n≤10, 1≤m≤20$; 对$100$%的输入数据:$1≤n≤100000,1≤m≤200000,1≤z≤1000000000$