9014: 机器人路径规划问题

Memory Limit:128 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

机器人Rob可在一个树状路径上自由移动。给定树状路径T上的起点s 和终点t,机器
人Rob要从s运动到t。树状路径T上有若干可移动的障碍物。由于路径狭窄,任何时刻在
路径的任何位置不能同时容纳2 个物体。每一步可以将障碍物或机器人移到相邻的空顶点
上。设计一个有效算法用最少移动次数使机器人从s运动到t。

对于给定的树T,以及障碍物在树T中的分布情况。计算机器人从起点s 到终点t的最
少移动次数。

Input

由文件input.txt提供输入数据。文件的第1 行有3 个正整数n,s和t,分别表示树T的
顶点数,起点s的编号和终点t 的编号。
接下来的n 行分别对应于树T 中编号为0,1,…,n-1 的顶点。每行的第1 个整数h
表示顶点的初始状态,当h=1 时表示该顶点为空顶点,当h=0 时表示该顶点为满顶点,其
中已有1 个障碍物。第2 个数k表示有k个顶点与该顶点相连。接下来的k个数是与该顶点
相连的顶点编号。

Output

程序运行结束时,将计算出的机器人最少移动次数输出到文件output.txt 中。如果无法
将机器人从起点移动到终点,输出“No solution!”。

Sample Input Copy

5 0 3
1 1 2
1 1 2
1 3 0 1 3
0 2 2 4
1 1 3

Sample Output Copy

3

加入题单

算法标签: