B. 护林员

    传统题 1000ms 256MiB

护林员

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

护林员

文件名

ranger.cpp

题目描述

克利切洛夫斯基正在一个国家公园做护林员的工作,他每天休息时间最喜欢做的事情就是沿着国家公园里漫长曲折的小径四处游览。这个国家公园共有N个景点,其中1号景点也是公园大门的所在地,有N-1条连接两个不同的景点的小路,保证每两个景点之间都能互相到达。

这天克利切洛夫斯基像往常一样在随意地行走,当他在第X号景点驻足时,他的同事通过通讯设备告诉他,连接第A号景点和第B号景点的小路因为天气原因无法通行,但是同事帮他开辟了一条新的连接C号景点和D号景点的道路。现在克利切洛夫斯基想让你帮他规划一下,他是否还能通过现存的道路回到1号景点?如果可以,他最少需要经过多少条小路可以到达1号景点?

输入格式

第一行输入一个正整数 NN,表示国家公园的景点数量;

接下来N1N-1行,每行输入两个正整数x,yx,y,表示最初有一条从x号景点到y号景点的道路。

最后一行按顺序输入五个正整数X,A,B,C,DX,A,B,C,D,含义如题目描述所示。

输出格式

输出一个整数,如果克利切洛夫斯基可以回到1号景点,输出他从X号景点到达1号景点最少需要经过的小路数量;如果不能回到1号景点,输出-1。

样例

样例输入

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

样例输出

2

样例解释

最初3号景点到达1号景点需要经过3-2-4-1,共3条小路;断开2到3、连接3到4后,3号景点到达1号景点仅需要经过3-4-1共2条小路。

提示

对于50%的数据,保证1N10001\leq N\leq 1000

对于100%的数据,保证1N100,0001X,A,B,C,DN1\leq N\leq100,000,1\leq X,A,B,C,D\leq N,保证在初始情况下所有景点两两间都能互相到达,保证断开的路径在初始情况下一定存在。

提高暑期期中测试

未参加
状态
已结束
规则
IOI
题目
3
开始于
2025-7-26 19:00
结束于
2025-7-31 19:00
持续时间
1.5 小时
主持人
参赛人数
18