30064 - Fire station
时间限制 : 1 秒
内存限制 : 128 MB
一座城市中分布着若干消防站。部分居民抱怨说,从自家到最近消防站的距离实在太远,因此市政府决定再建一座消防站。你的任务是选择新消防站的位置,使这些不满居民的房屋到最近消防站的距离尽可能缩短。
这座城市最多有 500 个路口,路口之间由长度各异的道路连接。每个路口相交的道路不超过 20 条。房屋和消防站的位置都视为位于路口(从路口到实际建筑物的距离可以忽略不计)。此外,我们假设每个路口至少对应一栋房屋。同一个路口可以建有多个消防站。
输入
输入的第一行包含两个正整数:f,现有消防站的数量(f \le 100),以及 i,路口的数量(i \le 500)。路口编号从 1 到 i 连续编号。
接下来有 f 行,每行给出一个现有消防站所在的路口编号。
随后若干行中,每行包含三个正整数:两个不同的路口编号,以及连接这两个路口的道路长度。所有道路都是双向的(至少对消防车来说如此),并且任意两个路口之间都存在一条可通行的路线。
不同测试用例之间用一个空行分隔。
输出
对每个测试用例输出一个整数:应当新建消防站的最小路口编号,使得所有路口到最近消防站的最大距离达到最小。
样例
输入
1 6 2 1 2 10 2 3 10 3 4 10 4 5 10 5 6 10 6 1 10
输出
5