Crucial Nodes
Hệ thống mạng viễn thông gồm $n$ trạm mạng và $m$ đường kết nối hai chiều giữa các trạm. Mạng viễn thông này đảm bảo luôn có đường truyền liên lạc trực tiếp hoặc gián tiếp giữa hai trạm bất kỳ.
Một trạm mạng được gọi là nút then chốt nếu sau khi loại bỏ trạm đó cùng với tất cả các đường kết nối liên quan, hệ thống bị đứt gãy làm cho ít nhất hai trạm khác không thể kết nối tới nhau. Hãy tìm tất cả các nút then chốt trong hệ thống mạng này.
Dữ liệu vào
Dòng đầu tiên chứa hai số nguyên $n$ và $m$ ($2 ≤ n ≤ 10^5$, $1 ≤ m ≤ 2 · 10^5$) lần lượt là số lượng trạm mạng và số lượng đường kết nối. Các trạm mạng được đánh số từ $1$ đến $n$.
$m$ dòng tiếp theo, mỗi dòng chứa hai số nguyên $a$ và $b$ ($1 ≤ a, b ≤ n, a ≠ b$) biểu diễn một đường kết nối hai chiều giữa trạm $a$ và trạm $b$. Giữa hai trạm có tối đa một đường kết nối và mỗi đường kết nối luôn nối hai trạm phân biệt.
Kết quả
Dòng đầu tiên in ra số nguyên $k$ đại diện cho số lượng nút then chốt.
Dòng tiếp theo in ra $k$ số nguyên là chỉ số của các nút then chốt. Bạn có thể in các chỉ số trạm này theo bất kỳ thứ tự nào.
Chấm điểm
Subtask 1 (30 points). $N ≤ 1000$; $M ≤ 2000$
Subtask 2 (70 points). $2 ≤ n ≤ 10^5$; $1 ≤ m ≤ 2 · 10^5$
Ví dụ
Input
4 3
1 2
2 3
3 4
Output
2
2 3
Ghi chú
Trong ví dụ trên, hệ thống gồm các kết nối nối tiếp lần lượt giữa trạm $1$, trạm $2$, trạm $3$ và trạm $4$. Loại bỏ trạm $2$ sẽ làm mất kết nối giữa trạm $1$ và các trạm $3, 4$. Loại bỏ trạm $3$ sẽ làm mất kết nối giữa các trạm $1, 2$ và trạm $4$. Do đó, các nút then chốt là $2$ và $3$.
Nộp bài
Đăng nhập để nộp bài.