问题6833--马拉松

6833: 马拉松

[命题人 : ]
时间限制 : 1.000 sec  内存限制 : 256 MiB

题目描述

【题目描述】

农夫约翰对自己奶牛的健康状况不满意,于是让他们参加了各种各样的健身活动。他的宝贝奶牛贝西参加了一个跑步班,她最终在那里预计将在附近的市中心地区进行马拉松比赛!

马拉松课程包括N个检查点(3<=N<=100000)按顺序访问,其中检查点1是起始位置检查点N是终点。贝西应该去参观这些检查点一个接一个,但她这么懒,她决定跳过一个检查点以缩短时间检查的时间。

然而,她不能跳过检查点1N,因为这太明显了。请帮助贝西找到她必须跑的最小距离,她可以跳过一个检查点。注意,由于课程设置在市中心街道,两个检查站之间的距离(x1y1)并且(x2y2)由|x1-x2|+|y1-y2|给出。这种测量方式距离——x的差值加上y的差值——是有时被称为“曼哈顿”距离,因为它反映了事实在市中心的网格中,你可以平行于x轴或y轴移动,但你不能沿着“乌鸦飞”的直线旅行。

【输入格式】:(marathon.in

第一行给出N的值。

接下来的N行分别包含两个空格分隔的整数xy,表示检查点(-1000<=x<=1000-1000<=y<=1000)。检查点按照必须访问的顺序排列。请注意,课程可能会在同一物理位置出现多个检查点。

Bessie跳过了这样一个检查点,她只跳过了一个实例检查点——她不会跳过同时出现的每个检查点地方。

【输出格式】:(marathon.out

输出Bessie可以跳过一个检查点后跑的最小距离。不要忘记用换行符结束输出。在此处所示的示例案例,跳过(83)处的检查点将导致最小总距离为14

【样本输入】:

4

0 0

8 3

11 -1

10 0

样本输出:

14

来源/分类