30064 - Fire station

通过次数

1

提交次数

1

时间限制 : 1 秒
内存限制 : 128 MB

一座城市中分布着若干消防站。部分居民抱怨说,从自家到最近消防站的距离实在太远,因此市政府决定再建一座消防站。你的任务是选择新消防站的位置,使这些不满居民的房屋到最近消防站的距离尽可能缩短。

这座城市最多有 500 个路口,路口之间由长度各异的道路连接。每个路口相交的道路不超过 20 条。房屋和消防站的位置都视为位于路口(从路口到实际建筑物的距离可以忽略不计)。此外,我们假设每个路口至少对应一栋房屋。同一个路口可以建有多个消防站。

输入

输入的第一行包含两个正整数:f,现有消防站的数量(f \le 100),以及 i,路口的数量(i \le 500)。路口编号从 1i 连续编号。

接下来有 f 行,每行给出一个现有消防站所在的路口编号。

随后若干行中,每行包含三个正整数:两个不同的路口编号,以及连接这两个路口的道路长度。所有道路都是双向的(至少对消防车来说如此),并且任意两个路口之间都存在一条可通行的路线。

不同测试用例之间用一个空行分隔。

输出

对每个测试用例输出一个整数:应当新建消防站的最小路口编号,使得所有路口到最近消防站的最大距离达到最小。

样例

输入

1 6
2
1 2 10
2 3 10
3 4 10
4 5 10
5 6 10
6 1 10

输出

5