#CSPJ1009. 疯狂的企鹅(penguin)
疯狂的企鹅(penguin)
题目描述
在结束了鹅厂企鹅们的训练后,小 Z 巧妙地构思了一个崭新的棋类游戏。这款游戏的舞台是一个 的棋盘,棋盘上刚好有 只可爱的企鹅。企鹅们每次可以向四个基本方向(上、下、左、右)之一移动一格,这被定义为一步。小 Z 希望这些企鹅整齐地排列成一行,也就是说,所有的企鹅要么全部位于同一行,要么全部位于同一列。值得一提的是,由于小 Z 对整齐的定义十分严格,他认为企鹅们即使排列在同一条对角线上,也不能算作满足条件。
由于小 Z 要求比较严格,企鹅们急需尽快找到一种排列方法以满足他的要求。你能否为这些无辜的小企鹅们提供一个解决方案,帮助它们以最少的步数达成目标?请注意,在任何时候,都不能有两只企鹅占据棋盘的同一个格子。
输入格式
从 penguin.in
文件输入数据。
第一行一个整数 表明棋盘大小。
接下来 行,每行两个整数 ,表示第 只企鹅初始在棋盘的 行 列。保证初始企鹅的坐标互不相同。
输出格式
输出到 penguin.out
文件。
一行一个整数表示最少需要的步数。
输入输出样例
5
1 2
2 4
3 4
5 1
5 3
6
样例2
此样例满足 的数据点限制。
点击链接 ex_penguin2.in 和 ex_penguin2.out 下载大样例 2 的输入数据和输出数据。
样例3
此样例满足 的数据点限制。
点击链接 ex_penguin3.in 和 ex_penguin3.out 下载大样例 3 的输入数据和输出数据。
说明/提示
样例 1 解释
所有企鹅都移动到第 列,所需的移动步数是最少的。更具体的移动情况如下:
$(1,2)\rightarrow (1,3),(2,4)\rightarrow (2,3),(3,4)\rightarrow (3,3), (5,1)\rightarrow (4,3),(5,3)\rightarrow (5,3)$
所需步数分别为 步。可以证明,没有步数更少的移动方案。
数据范围
对于 的数据,;
对于 的数据,;
对于 的数据, 并且保证初识时企鹅的坐标互不相同。
相关
在下列比赛中: