Cải cách du lịch
Đề 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ó cạnh kép (không có hai cạnh nối cùng một cặp đỉnh) và không có khuyên.
Bạn cần định hướng mỗi cạnh theo một trong hai chiều, biến đồ thị thành đồ thị có hướng. Sau khi định hướng, với mỗi đỉnh , gọi là số đỉnh mà tồn tại đường đi có hướng từ tới (kể cả chính ).
Hãy chọn cách định hướng sao cho giá trị đạt giá trị lớn nhất có thể.
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 và (, ), mô tả một cạnh vô hướng nối hai đỉnh và .
Dữ liệu ra
- Dòng đầu in ra một số nguyên — giá trị lớn nhất có thể đạt được.
- dòng tiếp theo, mỗi dòng in ra hai số nguyên và , có nghĩa cạnh thứ trong dữ liệu vào được định hướng từ tới . Các cạnh phải được in theo đúng thứ tự xuất hiện trong dữ liệu vào.
Nếu có nhiều cách định hướng tối ưu, in ra một cách bất kỳ.
Ràng buộc
- Đồ thị liên thông, không có cạnh kép, không có khuyên.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 7 9 4 3 2 6 7 1 4 1 7 3 3 5 7 4 6 5 2 5 |
4 3 4 6 2 1 7 4 1 7 3 5 3 4 7 5 6 2 5 |
Với cách định hướng này, mỗi đỉnh đều đến được ít nhất đỉnh. Không có cách nào để . |
| 2 1 2 1 |
1 2 1 |
Chỉ có một cách định hướng. Đỉnh đến được cả hai đỉnh, đỉnh chỉ đến được chính nó, nên . |
| 3 3 3 1 3 2 1 2 |
3 1 3 3 2 2 1 |
Đồ thị là một chu trình đỉnh, có thể định hướng thành chu trình có hướng — mỗi đỉnh đến được cả đỉnh. |
Bình luận