开始: 2025-07-26 17:50:00

暑假训练赛14【文凯杯】

结束: 2025-07-26 20:40:00
当前  2025-08-03 06:32:48  类型: IOI  状态: 已经结束 

P3. 平面旅行
描述

z最近在玩某款游戏,其地图可以看成一个平面直角坐标系。

地图上存在n 个小镇,小镇从1 到n 编号。第i 个小镇的坐标为x_{i}, y_{i}

定义两个小镇的距离为曼哈顿距离,比如小镇i 到小镇j 的距离为|x_{i}-x_{j}| + |y_{i}-y_{j}|,其中,|a|表示取a 的绝对值。

z在m 个小镇建立了传送门,也就是说,小z可以在任何时候任何瞬间不花费任何代价,直接到达这m 个小镇的任何一个。

z一开始在小镇1,小z想按1 到n 的顺序访问所有小镇按顺序做任务,问小z需要走过的最短距离是多少。

z可以提前到达某个小镇,但是必须做完前一个小镇的任务,才能做下一个小镇的任务。

做任务本身不会增加距离。


输入

第一行输入两个整数n,m,表示地图上小镇的数目和小z建立了传送门的小镇数量。

随后n 行,其中第i 行输入两个整数x_{i},y_{i},第i 个小镇的坐标。

随后一行输入m 个整数,表示建立了传送门的小镇编号。


输出

一行一个整数表示答案。

样例

输入

6 2
-10 -10
10 10
0 0
1 -1
-1 1
2 1
3 6

输出

21
提示

对于20%的数据有m=0

对于40%的数据有m=1

对于60%的数据有n, m ≤300

对于100%的数据有1 ≤n ≤5000 0 ≤m ≤n,-10000 ≤x_{i},y_{i} ≤10000数据保证没有任意两个小镇在同一坐标下。


提交

题目参数
时间限制 1 秒
内存限制 128 MB
提交