#abc132e. [abc132_e]Hopscotch Addict
[abc132_e]Hopscotch Addict
Problem Statement
Ken loves ken-ken-pa (Japanese version of hopscotch). Today, he will play it on a directed graph . consists of vertices numbered to , and edges. The -th edge points from Vertex to Vertex .
First, Ken stands on Vertex . He wants to reach Vertex by repeating ken-ken-pa. In one ken-ken-pa, he does the following exactly three times: follow an edge pointing from the vertex on which he is standing.
Determine if he can reach Vertex by repeating ken-ken-pa. If the answer is yes, find the minimum number of ken-ken-pa needed to reach Vertex . Note that visiting Vertex in the middle of a ken-ken-pa does not count as reaching Vertex by repeating ken-ken-pa.
Constraints
- If , .
Input
Input is given from Standard Input in the following format:
Output
If Ken cannot reach Vertex from Vertex by repeating ken-ken-pa, print . If he can, print the minimum number of ken-ken-pa needed to reach vertex .
Sample Input 1
4 4
1 2
2 3
3 4
4 1
1 3
Sample Output 1
2
Ken can reach Vertex from Vertex in two ken-ken-pa, as follows: in the first ken-ken-pa, then in the second ken-ken-pa. This is the minimum number of ken-ken-pa needed.
Sample Input 2
3 3
1 2
2 3
3 1
1 2
Sample Output 2
-1
Any number of ken-ken-pa will bring Ken back to Vertex , so he cannot reach Vertex , though he can pass through it in the middle of a ken-ken-pa.
Sample Input 3
2 0
1 2
Sample Output 3
-1
Vertex and Vertex may be disconnected.
Sample Input 4
6 8
1 2
2 3
3 4
4 5
5 1
1 4
1 5
4 6
1 6
Sample Output 4
2