问题 B: 马拉松

内存限制:128 MB 时间限制:1 S
题面:传统 评测方式:文本比较 上传者:
提交:124 通过:44

题目描述

Marathon
由于对他的奶牛的健康状况不佳而感到不满,牧场主约翰让它们参加各种各样的体育健身活动。最让他感到自豪的奶牛是 Bessie,她将参加约翰牧场附近城市里的马拉松比赛!

马拉松比赛有N 个检查点 (3N500) ,需要按顺序访问。检查点 1 是起点,检查点 N 是终点。Bessie 应该按顺序一一访问所有的这些检查点,但由于她是一头懒惰的牛(懒惰竟然还选择跑马拉松!),于是她决定跳过 K(K<N) 个检查点以缩小她的赛程。但她不能跳过第 1 个和第 N 个检查点,因为这样太明显了。
请你帮助 Bessie 计算出跳过中间的 K 个检查点后她最少要跑多少距离。
注意:由于街道是网格状的,我们用坐标来表示点的位置。但是 (x1,y1),(x2,y2) 两点间的距离应为 | x1 - x2 | + | y1 - y2 | ,这种测量距离的方法被称为“曼哈顿”距离,这是因为在市中心的网格路中,你可以沿平行于 x 轴或 y 轴的方向走,但不能沿直线到达。

输入格式

第1行:两个正整数 N K

2行到第N+1行:每行两个整数x, y (−1000x1000,−1000y1000)
这里给出了检查点的顺序,她必须按顺序访问。注意:可能会有几个检查点出现在同一位置,Bessie 跳过这样的检查点时,相当于只跳过其中的一个检查点。

输出格式

输出跳过某一个检查点后 Bessie 可以跑的最短距离。



输入样例:

5 2
0 0
8 3
1 1
10 -5
2 2

输出样例:

4

一种最佳方案是跳过 (8,3)(8,3) 和 (10,−5)(10,−5)

输入样例 复制

5 2
0 0
8 3
1 1
10 -5
2 2

输出样例 复制

4

数据范围与提示

In the sample case shown here, skipping the checkpoints at (8, 3) and (10, -5) leads to the minimum total distance of 4.
跳过的检查点 (8,3) (10,-5) ,由 (0,0) -> (1,1) -> (2,2),最短距离为4。