Xây Đường
Đề bài
Mô tả
Byteland có thành phố và con đường hai chiều. Hãy tìm số con đường tối thiểu cần xây thêm để tất cả các thành phố được kết nối với nhau (có thể đi từ bất kỳ thành phố nào đến bất kỳ thành phố nào).
Dữ liệu vào
- Dòng 1: hai số nguyên và .
- dòng tiếp theo: mỗi dòng gồm hai số nguyên và — hai đầu của một con đường.
Dữ liệu ra
- Dòng 1: số nguyên — số con đường cần xây thêm.
- dòng tiếp theo: mỗi dòng gồm hai số nguyên — hai thành phố nối bởi con đường mới.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 2 1 2 3 4 |
1 2 3 |
Hai thành phần {1,2} và {3,4} — cần 1 đường nối. |
| 5 0 | 4 1 2 2 3 3 4 4 5 |
5 thành phố biệt lập — cần 4 đường. |
Bình luận