#1248. 士兵站队问题

士兵站队问题

题目描述

在一个划分成网格的操场上,n\red{n}个士兵散乱地站在网格点上。

网格点由整数坐标(x,y\red{x,y})表示。

士兵们可以沿网格边上、下、左、右移动一步,但在同一时刻任一网格点上只能有一名士兵。

按照军官的命令,士兵们要整齐地列成一个水平队列,即排列成(x,y),(x+1,y),,(x+n1,y)\red{(x,y),(x+1,y),…,(x+n-1,y)}

如何选择x\red{x}y\red{y}的值才能使士兵们以最少的总移动步数排成一列。

编程任务:

计算使所有士兵排成一行需要的最少移动步数。

输入格式

输入士兵数n\red{n}1<=n<=10000\red{1<=n<=10000}。接下来n 行是 士兵的初始位置,每行2\red{2} 个整数x\red{x}y\red{y}10000<=xy<=10000\red{-10000<=x,y<=10000}

输出格式

输出的第1 行中的数是士兵排成一行需要的最少移动步数。

样例

输入样例

5
1 2
2 2
1 3
3 -2
3 3

输出样例

8