Đồ thị không có đường đi dài
Đề bài
Mô tả
Cho một đồ thị vô hướng liên thông gồm đỉnh và cạnh. Đồ thị không có khuyên (cạnh nối một đỉnh với chính nó) và không có cạnh bội.
Bạn cần định hướng tất cả các cạnh (biến mỗi cạnh vô hướng thành một cung có hướng) sao cho đồ thị có hướng thu được không chứa bất kỳ đường đi nào có độ dài từ trở lên (độ dài đường đi tính bằng số cung đi qua).
Nếu tồn tại nhiều cách định hướng thỏa mãn, in ra một cách bất kỳ.
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, dòng thứ chứa hai số nguyên : cạnh thứ nối hai đỉnh và .
Dữ liệu ra
- Nếu không tồn tại cách định hướng thỏa mãn, in ra NO.
- Ngược lại, in ra YES ở dòng đầu. Dòng thứ hai in một xâu nhị phân độ dài : ký tự thứ là 0 nếu cạnh thứ được định hướng từ đến , và là 1 nếu định hướng từ đến .
Ràng buộc
- ,
- Đồ thị liên thông, không có khuyên và cạnh bội.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 6 5 1 5 2 1 1 4 3 1 6 1 |
YES 01011 |
Các cạnh được định hướng: , , , , . Mọi cung đều đi ra từ đỉnh nên không có đường đi nào dài quá . Đáp án khác (ví dụ mọi cung đều đi vào đỉnh ) cũng được chấp nhận. |
| 4 5 1 2 2 3 3 4 4 1 1 3 |
NO | Đồ thị chứa chu trình lẻ (qua cạnh -), nên không thể định hướng thỏa mãn. |
Bình luận