「一本通 4.4 练习 4」跳跳棋
You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
题目描述
原题来自:BZOJ 2144
跳跳棋是在一条数轴上进行的。棋子只能摆在整点上。每个点不能摆超过一个棋子。我们用跳跳棋来做一个简单的游戏:棋盘上有三颗棋子,分别在 这三个位置。我们要通过最少的跳动把他们的位置移动成 (注意:棋子是没有区别的)。
跳动的规则很简单,任意选一颗棋子,对一颗中轴棋子跳动。跳动后两颗棋子距离不变。一次只允许跳过一颗棋子。
写一个程序,首先判断是否可以完成任务。如果可以,输出最少需要的跳动次数。

输入格式
第一行包含三个整数,表示当前棋子的位置 。第二行包含三个整数,表示目标位置 。
输出格式
如果无解,输出一行 NO。如果可以到达,第一行输出 YES,第二行输出最少步数。
样例
1 2 3
0 3 5
YES
2
数据范围与提示
对于 的数据,输入整数的绝对值均不超过 ;
对于 的数据,输入整数的绝对值均不超过 ;
对于 的数据,输入整数的绝对值不超过 。保证 互不相同, 互不相同。
初二竞赛组作业——数据结构(提高)
- Status
- Done
- Problem
- 20
- Open Since
- 2025-9-28 12:15
- Deadline
- 2025-12-31 23:59
- Extension
- 24 hour(s)