#1250. 岛屿与弹弓 - 2

岛屿与弹弓 - 2

描述

NN个岛屿,记为1、2、3、...、N。有MM座巨大弹弓,瞄准了另外一个岛屿,并且由于需要精密计算,目标岛屿不能更改。

现在你在1号岛屿,需要利用这些弹弓把包裹寄到KK号岛屿,问,能否到达?如果能,请找出最少需要使用多少个弹弓,如果不能,请输出-1.

现在每个岛屿可以安装多个弹弓

输入输出格式

输入

第一行为两个以空格隔开的正整数NN KK, 其中NN表示一共有几个岛屿,KK表示包裹的目的地岛屿编号。 ( 1KN<1,0001≤K≤N<1,000 )

第二行为一个正整数MM,表示一共有多少座弹弓。 ( 1M<N1 ≤ M < N )

随后MM行,每行为两个以空格分割的正整数aa, bb,表示aa岛屿上有一个瞄准了bb岛屿的弹弓。 ( 1aN,1bN1 ≤ a ≤ N, 1 ≤ b ≤ N )

输出

一行,一个整数,如果能到达,则输出最少需要使用的弹弓数量,否则输出-1。

样例

5 3
3
1 2
2 3
2 4
2