Gốc đối xứng hoàn hảo
Nộp bài giải
Điểm:
8,00 (OI)
Giới hạn thời gian:
1.0s
Python 3
5.0s
Giới hạn bộ nhớ:
256M
Đầu vào:
stdin
Đầu ra:
stdout
Dạng bài
Ngôn ngữ cho phép
C++, Dart, Go, Groovy, Java, Javascript, Kotlin, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Typescript, Zig
Cho một cây gồm đỉnh. Hãy tìm một đỉnh để làm gốc sao cho điều kiện sau được thỏa mãn:
- Với mọi cặp đỉnh , nếu thì .
Trong đó là số đỉnh kề với trong cây (bậc của ), và là số cạnh trên đường đi ngắn nhất giữa và .
Hãy chỉ ra một đỉnh gốc thỏa mãn nếu tồn tại; nếu có nhiều đáp án, in ra một đáp án bất kỳ. Nếu không tồn tại đỉnh gốc nào thỏa mãn, in ra .
Dữ liệu vào
- Dòng đầu tiên chứa một số nguyên — số đỉnh.
- Mỗi dòng trong dòng tiếp theo chứa hai số nguyên () — mô tả một cạnh giữa và .
Dữ liệu đảm bảo đồ thị tạo thành một cây.
Dữ liệu ra
In ra một số nguyên — chỉ số của một đỉnh gốc thỏa mãn, hoặc nếu không tồn tại.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 6 1 3 2 3 3 4 4 5 4 6 |
-1 | Không tồn tại đỉnh gốc nào thỏa mãn. |
| 7 1 2 2 3 3 4 4 5 3 6 6 7 |
5 | Các đỉnh đều là đáp án hợp lệ. Với gốc : ở độ sâu chỉ có đỉnh (bậc ), độ sâu chỉ có đỉnh (bậc ), độ sâu chỉ có đỉnh (bậc ), độ sâu có đều bậc , độ sâu có đều bậc . |
Bình luận