Mình xin phép post thuật toán tốt bên topic bàn luận ở đây nhé!!!
===========================================================================================
Bài 2: (của bạn Quang Vũ)
1. Tìm 1 đường đi bất kỳ từ s đến t, s=u0u1u2..uk=t
Gán nhãn cho các đỉnh này lần lượt là 0,1,2,..,k
Nhận xét: các đỉnh thỏa mãn phải thuộc đường đi này
2. Với mọi đỉnh u của đồ thị, tính f[u] với ý nghĩa
f[u] = đỉnh có nhãn lớn nhất đến được từ u mà không sử dụng các cạnh thuộc đường đi trên
3. Điều kiện để đỉnh ui thõa mãn là:
với mọi j < i, f[uj] <= i
Để tính f, có thể dùng dfs.
Độ phức tạp O(n+m).
===========================================================================================
Quá hay!!!
