atcoder#ABC132E. [ABC132E] Hopscotch Addict
[ABC132E] Hopscotch Addict
Score : points
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 .
4 4
1 2
2 3
3 4
4 1
1 3
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.
3 3
1 2
2 3
3 1
1 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.
2 0
1 2
-1
Vertex and Vertex may be disconnected.
6 8
1 2
2 3
3 4
4 5
5 1
1 4
1 5
4 6
1 6
2