[QNOI 2018] CEZAR

Xem PDF

Nộp bài


Điểm: 25 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 256M

Tác giả:
Dạng bài

Tại TP, có tất cả \(n\) thượng nghị sĩ ở trong \(n\) ngôi nhà (đánh số từ \(1\) đến \(n\)), giữa hai ngôi nhà có một đường đi duy nhất: đường đi trực tiếp hoặc không trực tiếp (đi qua các con đường khác). Tất cả các ngôi nhà đều đi được đến nhau.

Mỗi thượng nghị sĩ khi đi từ nhà mình đến thượng viện, phải trả \(1\) USD khi đi qua một con phố (con phố là đường nối trực tiếp hai ngôi nhà bất kỳ). Người đứng đầu thượng viện đã nghĩ cách làm sao cho số tiền mà các thượng nghị sĩ phải trả là tối thiểu. Vì vậy, ông ra quyết định:

  • Có \(k\) con phố miễn phí (thượng nghị sĩ sẽ không phải trả tiền khi đi trên con phố này).
  • Đặt tòa nhà thượng viện ở một trong \(n\) ngôi nhà.

Yêu cầu: Hãy viết chương trình tính xem tổng chi phí tối thiểu là bao nhiêu?

Input

  • Dòng đầu tiên chứa hai số nguyên \(n\) và \(k\) tương ứng là số ngôi nhà ở TP và số con phố miễn phí;
  • Tiếp theo là \(n-1\) dòng, mỗi dòng chứa hai số nguyên \(i,\ j\) có nghĩa là có con phố nối ngôi nhà \(i\) và ngôi nhà \(j\ (1<n\leq10^4,\ 0<k<n,\ 1\leq i,\ j\leq n,\ i\neq j)\).

Output

  • In ra một số nguyên duy nhất là tổng chi phí tối thiểu.

Ví dụ

Sample input
13 3
1 2
2 3
2 8
7 8
7 5
5 4
5 6
8 9
8 10
10 11
10 12
10 13
Sample output
11
Note

Có nhiều phương án giải quyết, đây là 1 phương án: \((5,\ 7),\ (7,\ 8),\ (8,\ 10)\) là những con phố miễn phí và \(8\) là nơi đặt thượng viện. Chi phí tối thiểu là: 11.