Chọn ĐTQG Hà Nội 2023 - Truyền dữ liệu

Xem dạng PDF

Gửi bài giải

Điểm: 90,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

TR là một hệ thống trao đổi dữ liệu trực tiếp giữa các máy tính đang được thử nghiệm tại trường ~X~. Trường có ~N~ máy tính được đánh số từ ~1~ tới ~N~. Các máy tính đều sử dụng hệ thống TR và được kết nối với nhau theo đồ thị dạng cây.

Ban đầu, hệ thống có một tệp dữ liệu đang được lưu trữ bởi một hoặc hai máy tính. Trường muốn truyền tệp này đến tất cả các máy tính khác trong hệ thống. Cơ chế truyền dữ liệu của hệ thống TR như sau: cứ một phút, mỗi máy tính trong hệ thống chỉ có thể truyền dữ liệu đến duy nhất một máy tính khác được kết nối trực tiếp với nó.

Yêu cầu: Cho số hiệu của các máy tính đang lưu trữ tệp dữ liệu ở thời điểm ban đầu. Hãy tính thời gian tối thiểu để tất cả các máy tính trong hệ thống nhận được tệp dữ liệu.

Input

  • Dòng đầu tiên chứa số nguyên ~N~ ~(1 < N \le 10^5)~ là số lượng máy tính;

  • ~N - 1~ dòng tiếp theo, mỗi dòng chứa hai số nguyên khác nhau ~x~ và ~y~ ~(1 \le x, y \le N)~ mô tả số hiệu của hai máy tính được kết nối trực tiếp;

  • Dòng tiếp theo chứa số ~M~ ~(1 \le M \le 2)~ là số lượng máy tính đang lưu trữ tệp dữ liệu ở thời điểm ban đầu;

  • Dòng tiếp theo chứa ~M~ số nguyên dương mô tả số hiệu của các máy tính đang lưu trữ tệp dữ liệu.

Output

Gồm một số nguyên là thời gian tối thiểu hoàn thành công việc.

Scoring

Subtask Điểm Ràng buộc
1 ~25\%~ ~N \le 20~
2 ~25\%~ ~M = 1~
3 ~25\%~ ~M = 2; N \le 1000~
4 ~25\%~ Không có ràng buộc gì thêm

Sample Input 1

6
1 2
2 3
2 4
1 5
5 6
1
1

Sample Output 1

3

Sample Input 2

6
1 2
2 3
2 4
1 5
5 6
2
1 2

Sample Output 2

2

Notes

Test 1:

  • Ban đầu máy ~1~ lưu trữ tệp dữ liệu.
  • Phút thứ ~1~: máy ~2~ nhận được tệp dữ liệu.
  • Phút thứ ~2~: máy ~3~ và ~5~ nhận được tệp dữ liệu.
  • Phút thứ ~3~: máy ~4~ và ~6~ nhận được tệp dữ liệu.

Test 2:

  • Ban đầu máy ~1~ và ~2~ lưu trữ tệp dữ liệu.
  • Phút thứ ~1~: máy ~3~ và ~5~ nhận được tệp dữ liệu.
  • Phút thứ ~2~: máy ~4~ và ~6~ nhận được tệp dữ liệu.

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.