P1156

[Usaco2005]Part Acquisition

[Usaco2005]Part Acquisition

奶牛们受命前往太空,为牛棚获取一台新的挤奶机。它们将穿越一个包含 NN 颗行星的星团,每颗行星上都有一个交易站。

星团中共有 KK 种物品,编号为 11 到 KK。每个交易站都会给出自己希望获得的物品,以及愿意用于交换的物品。由于这些行星都没有货币,所有交易均采用以物易物的方式:交易双方各自交出一件物品,并获得对方的一件物品。

奶牛从地球出发时持有一罐优质干草,即物品 11,它们最终希望获得一台新的挤奶机,即物品 KK。请帮助奶牛找到一种交易方案,使交易次数尽可能少。如果无法获得物品 KK,则输出 −1-1。

输入格式

第一行包含两个以空格分隔的整数 NN 和 KK。

接下来 NN 行,第 ii 行包含两个以空格分隔的整数 aia_i 和 bib_i,表示第 ii 颗行星的交易站愿意用物品 bib_i 交换物品 aia_i。也就是说,奶牛交出物品 aia_i 后,可以获得物品 bib_i。

输出格式

输出一个整数,表示获得物品 KK 所需的最少交易次数加 11。

如果奶牛无法获得物品 KK,则输出 −1-1。

样例输入

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

样例输出

4

样例解释

奶牛依次用物品 11 换取物品 33,再用物品 33 换取物品 22,最后用物品 22 换取物品 55。

整个过程进行了 33 次交易,因此输出 3+1=43+1=4。

数据范围

  • 1≤N≤5×1041\le N\le 5\times 10^4;
  • 1≤K≤1031\le K\le 10^3;
  • 物品编号为 11 到 KK。

来源与许可

本题为 USACO 2005 试题「Part Acquisition」,题面与测试数据整理自 BZOJ。

样例 1

输入

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

输出

4