Học sinh và dây giày
Đề bài
Mô tả
Cho một đồ thị vô hướng đơn đỉnh và cạnh. Các đỉnh được đánh số từ đến .
Quá trình loại bỏ diễn ra theo từng đợt như sau. Tại mỗi đợt, ta đồng thời xác định mọi đỉnh hiện đang có đúng cạnh nối với đỉnh khác trong đồ thị, rồi xoá toàn bộ các đỉnh đó cùng các cạnh nối với chúng. Đợt đó được tính là một "nhóm bị loại".
Sau khi xoá xong, ta tiếp tục lặp lại với đồ thị còn lại cho đến khi không còn đỉnh nào có đúng cạnh nối — quá trình dừng.
Hãy đếm số nhóm bị loại trong toàn bộ quá trình.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và — số đỉnh và số cạnh.
- dòng tiếp theo, mỗi dòng chứa hai số nguyên , (, ) cho biết có một cạnh nối đỉnh với đỉnh .
Đảm bảo không có hai cạnh trùng nhau và không có cạnh tự nối từ một đỉnh đến chính nó.
Dữ liệu ra
In ra một số nguyên duy nhất — số nhóm bị loại.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 3 1 2 2 3 3 1 |
0 | Ba đỉnh tạo thành chu trình; mỗi đỉnh có cạnh nên không có đợt loại nào. |
| 6 3 1 2 2 3 3 4 |
2 | Đợt : đỉnh và (mỗi đỉnh chỉ có cạnh) bị loại. Đợt : đỉnh và trở thành các đỉnh có cạnh và bị loại. Hai đỉnh cô lập , ban đầu đã có cạnh nên không bao giờ bị xét. |
| 6 5 1 4 2 4 3 4 5 4 6 4 |
1 | Đỉnh là trung tâm hình sao; tất cả đỉnh còn lại đều có đúng cạnh nên bị loại đồng thời. Sau đó đỉnh trở thành đỉnh cô lập (không còn cạnh) nên dừng. |
Bình luận