Score : 100 points
There is a directed graph G with N vertices and M edges. The vertices are numbered 1, 2, \ldots, N, and for each i (1 \leq i \leq M), the i-th directed edge goes from Vertex x_i to y_i. G does not contain directed cycles.
Find the length of the longest directed path in G. Here, the length of a directed path is the number of edges in it.
Input is given from Standard Input in the following format:
N M x_1 y_1 x_2 y_2 : x_M y_M
Print the length of the longest directed path in G.
4 5 1 2 1 3 3 2 2 4 3 4
3
The red directed path in the following figure is the longest:
6 3 2 3 4 5 5 6
2
The red directed path in the following figure is the longest:
5 8 5 3 2 3 2 4 5 2 5 1 1 4 4 3 1 3
3
The red directed path in the following figure is one of the longest: