Cây khung st
Đề bài
Mô tả
Cho một đồ thị vô hướng liên thông gồm đỉnh và cạnh, không có khuyên và không có cạnh lặp. Cho thêm hai đỉnh phân biệt , và hai số , .
Hãy chọn ra một cây khung của đồ thị (gồm đúng cạnh của đồ thị, nối tất cả các đỉnh và không có chu trình) sao cho bậc của đỉnh trong cây không vượt quá và bậc của đỉnh trong cây không vượt quá , hoặc cho biết không tồn tại cây khung như vậy.
Dữ liệu vào
- Dòng đầu tiên chứa hai số nguyên và .
- dòng tiếp theo, mỗi dòng chứa hai số nguyên , mô tả một cạnh nối hai đỉnh và .
- Dòng cuối cùng chứa bốn số nguyên , , , .
Dữ liệu ra
Nếu không tồn tại cây khung thỏa mãn, in ra No.
Ngược lại, dòng đầu tiên in ra Yes, sau đó in dòng, mỗi dòng gồm hai số nguyên là hai đầu mút của một cạnh trong cây khung. Mỗi cạnh của cây được in đúng một lần, các cạnh có thể in theo thứ tự bất kỳ và hai đầu mút của mỗi cạnh cũng có thể in theo thứ tự bất kỳ.
Nếu có nhiều đáp án, in ra đáp án bất kỳ.
Ràng buộc
- , ; đồ thị liên thông, không có cạnh lặp
- ,
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 3 1 2 2 3 3 1 1 2 1 1 |
Yes 1 3 2 3 |
Cạnh không được dùng; đỉnh và đỉnh đều có bậc . |
| 7 8 7 4 1 3 5 4 5 7 3 2 2 4 6 1 1 2 6 4 1 4 |
Yes 1 3 5 7 3 2 4 5 6 1 4 2 |
Đỉnh có bậc , đỉnh có bậc . |
| 3 2 2 1 3 1 1 2 1 2 |
No | Đồ thị chính là một cây, đỉnh bắt buộc có bậc . |
Bình luận