Đường đi dài nhất

Xem PDF

Điểm: 1600 Thời gian: 2.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho đồ thị có hướng gồm \(N\) đỉnh và \(M\) cạnh. Các đỉnh được đánh số \(1,2,...,N\) và với mỗi \(i(1\le i\le M)\), cạnh có hướng thứ \(i\) sẽ đi từ đỉnh \(x_i\) đến đỉnh \(y_i\). \(G\) không chứa bất kì chu trình có hướng nào !

Tìm độ dài lớn nhất của đường đi có hướng trong \(G\). Ở đây, độ dài của đường đi có hướng chính là số cạnh trong nó.

Input

  • Dòng thứ nhất chứa \(2\) số nguyên \(N,M(2\le N\le 10^5; 1\le M\le 10^5)\)

  • \(M\) dòng tiếp theo mỗi dòng chứa hai số nguyên \(x_i,y_i(1\le x_i,y_i\le N )\) (Ở đây các cặp \((x_i,y_i)\) phân biệt nhau và đề đảm bảo rằng, \(G\) không chứa bất kì chu trình có hướng nào).

Example

Test 1

Input
3 2
1 2
2 3
Output
2
Note

Giải thích: Con đường có độ dài lớn nhất là : \(1\rightarrow 2\rightarrow 3\)


Bình luận


  • -8
    Vinht1k60    9:38 a.m. 2 Tháng 8, 2020

    Bình luận bị ẩn vì nhiều phản hồi tiêu cực. Nhấp vào đây để mở.


    • 1
      jumptozero    9:40 a.m. 2 Tháng 8, 2020

      Nếu là cây thì buộc nó có \(N-1\) cạnh. Nhưng ở đây số cạnh của nó không nhất thiết phải là \(N-1\) , số cạnh có thể nhỏ hơn !


      • -4
        Vinht1k60    9:49 a.m. 2 Tháng 8, 2020

        Thế thì là nhiều cây :v

      3 bình luận nữa