HihoCoder1643 : 最少换乘([Offer收割]编程练习赛37)

Posted ---学习ing---

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HihoCoder1643 : 最少换乘([Offer收割]编程练习赛37)相关的知识,希望对你有一定的参考价值。

描述

小Ho居住的城市有N条公交车线路,其中第i条线路上有Ki个车站。  

某些线路之间会有公共的车站,小Ho可以在这些车站从一条线路换乘到另一条线路。  

现在给定N条公交车线路以及两个车站S和E,你能帮助小Ho计算从S到E最少换乘几次公交车吗?

输入

第一行包含三个整数N,S和E。  

以下N行每行描述一条线路。第一个整数Ki代表该条线路包含的车站数。之后Ki个整数代表车站的编号。

注意车站编号不一定连续。  

对于50%的数据,1 ≤ N ≤ 1000,  1 ≤ Ki ≤ 100

对于100%的数据,1 ≤ N ≤ 50000, 1 ≤ Ki ≤ 80000,1 ≤ 所有Ki之和 ≤ 500000, 1 ≤ 车站编号 ≤ 5000000。

输出

输出最少换乘次数。如果S到E不可达,输出-1。

样例输入

3 123 345  
4 321 375 123 456  
4 222 333 123 444  
2 222 345

样例输出

1

 

以上是关于HihoCoder1643 : 最少换乘([Offer收割]编程练习赛37)的主要内容,如果未能解决你的问题,请参考以下文章

nyoj 1238 最少换乘 (河南省第八届acm程序设计大赛)

算法图解之广度优先搜索

另类bfs建图--求到目标地坐公交的最小换乘次数

hihocoder编程练习赛73 A 地铁站

HihoCOder1323 : 回文字符串(区间DP)

983E - NN country