Kết nối
Đề bài
Mô tả
Tỉnh LS có thành phố, được đánh số từ đến . Hai thành phố và () có thể có nhiều nhất một con đường tỉnh lộ hai chiều nối với nhau.
Ủy ban nhân dân tỉnh LS quyết định thực hiện hai việc sau:
- Mở thêm một con đường mới nối trực tiếp giữa hai thành phố bất kỳ trong thành phố (hai thành phố này chưa có đường tỉnh lộ nối trực tiếp).
- Xây dựng một sân vận động tiêu chuẩn Olympic tại một thành phố nào đó để tạo điều kiện cho nhân dân luyện tập và thi đấu thể thao.
Người dân của một thành phố có thể tới sân vận động nếu thành phố đó chính là thành phố có sân vận động hoặc có đường đi (trực tiếp hoặc gián tiếp) tới thành phố có sân vận động. Nếu mọi cặp thành phố đều đã có đường nối trực tiếp (không thể mở thêm đường mới, chẳng hạn khi ) thì chỉ xây sân vận động.
Yêu cầu: Tính xem sân vận động có thể kết nối nhiều nhất là bao nhiêu thành phố, tức là số thành phố lớn nhất mà người dân tại đó có thể tới sân vận động để luyện tập và thi đấu thể thao.
Dữ liệu vào
- Dòng đầu ghi hai số nguyên (số thành phố) và (số đường tỉnh lộ).
- dòng sau, mỗi dòng ghi hai số nguyên dương và thể hiện thành phố có đường tỉnh lộ nối với thành phố (). Mỗi cặp thành phố xuất hiện nhiều nhất một lần.
Dữ liệu ra
Ghi một số nguyên dương là số thành phố lớn nhất mà người dân tại đó có thể tới sân vận động để luyện tập và thi đấu thể thao.
Ràng buộc
- , .
- , ; giữa hai thành phố có nhiều nhất một con đường.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 10 6 1 2 5 4 6 7 10 8 7 8 3 4 |
7 | Các nhóm thành phố liên thông: , , , . Mở đường nối thành phố với thành phố và xây sân vận động ở thành phố : kết nối được thành phố. |
| 4 4 1 2 2 3 3 1 3 4 |
4 | Ví dụ bổ sung. Mọi thành phố đã liên thông nên kết nối được cả thành phố (con đường mới nối hai thành phố chưa có đường, ví dụ và ). |
| 1 0 | 1 | Ví dụ bổ sung. Chỉ có một thành phố, không mở được đường mới; sân vận động phục vụ chính thành phố đó. |
| 6 2 1 2 3 4 |
4 | Ví dụ bổ sung. Hai nhóm và cùng có thành phố; nối hai nhóm này được thành phố. |
Bình luận