#A. 躲避技能

    Type: Default 1000ms 256MiB

躲避技能

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

鸡尾酒是一个多操手,他可以同时操作 𝑚个账号。今天,他使用这些账号一起 打一个boss。

这个 boss 战的地图共有 𝑛 个关键点,其中有 𝑛 − 1 条边,每 条边连接着两个不同的点,使得从任意点出发可以到达其他所有的点。

鸡尾酒的 𝑚 个账号分别编号 1 至 𝑚 ,一开始,第 𝑖 个账号在点 𝑠𝑖𝑠_𝑖。可能有两个账号在同一位置。

现在,boss 放出了一个致命技能。boss在地图上标出了 𝑚 个关键点,想成功 躲避这个技能,必须在每一个被标记的点上,都有一个账号站在上面。注意,可能会有点被多次标记,多次标记的点需要有多个账号站在上面。 由于鸡尾酒无法分身,所以他必须先把一个账号移动到一个位置,才能动另一个 账号,不能同时移动多个账号。假设鸡尾酒的任意账号通过第 𝑖 条边的时间为 𝑤𝑖𝑤_𝑖,请帮鸡尾酒求出他成功躲避技能所需要的最少时间。

输入格式

一行两个正整数 𝑛 和 𝑚 ,分别表示关键点的数量和标记点的数量。 后面一行 𝑚个数字 𝑠1,𝑠2,,𝑠𝑚𝑠_1, 𝑠_2 , … , 𝑠_𝑚 , 𝑠𝑖𝑠_𝑖 表示第 𝑖 个账号的初始位置。 再后面一行 𝑚 个数字,表示标记点的位置。 后面 𝑛 − 1 行每行三个数字 𝑢𝑖,𝑣𝑖,𝑤𝑖𝑢_𝑖, 𝑣_𝑖, 𝑤_𝑖,表示有一条连接 𝑢𝑖,𝑣𝑖𝑢_𝑖, 𝑣_𝑖 的边,经过时间为 𝑤𝑖𝑤_𝑖。 由于𝑏oss想要为难鸡尾酒,所以所有的 𝑤𝑖𝑤_𝑖 都是反着给出的,即低位在前,高位

输出格式

一行一个正整数,表示最少时间。

6 4
5 1 3 2
4 2 1 2
1 2 5
2 3 6
2 4 7
1 5 4
1 6 4
22
10 3
2 3 4
1 8 10
1 2 5
1 3 6
1 4 7
3 5 11
4 6 11
5 9 43
6 7 34
9 10 13
7 8 42
159
2 10
1 1 1 1 1 1 1 1 1 1
2 2 2 2 2 2 2 2 2 2
1 2 1234567891001987654321
12345678910019876543210

提示与说明

请使用较快的输入方式。 本题共 25 个数据点,每个测试点等分(即一个测试点 4 分)。 保证对于所有数据,1 ⩽ 𝑛, 𝑚 ⩽ 10510^5, 1 ⩽ 𝑤𝑖𝑤_𝑖1010010^{100}。 保证对于 20% 的数据,1 ⩽ 𝑛, 𝑚 ⩽ 10,1 ⩽ 𝑤𝑖𝑤_𝑖10510^5。 保证对于另外 20% 的数据,1 ⩽ 𝑚 ⩽ 10,1 ⩽ 𝑤𝑖𝑤_𝑖10510^5。 保证对于另外 40% 的数据,1 ⩽ 𝑤𝑖𝑤_𝑖10510^5

0718

Not Attended
Status
Done
Rule
IOI
Problem
4
Start at
2024-7-18 13:30
End at
2024-7-18 17:30
Duration
4 hour(s)
Host
Partic.
4