Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

VMCUT2 - Cắt cây

Đọc đề đẹp hơn ở:
https://codeforces.com/group/FLVn1Sc504/contest/274855/problem/S
https://codeforces.com/group/FLVn1Sc504/contest/272945/problem/N

Cho một đồ thị dạng cây gồm N đỉnh, đỉnh thứ i có trọng số là w[i]. Cho K lần cắt cây (bằng cạnh xóa đi 1 cạnh đang có), ta sẽ tạo ra một rừng gồm K+1 cây. Trọng số của một cây được định nghĩa là tổng trọng số các đỉnh trong cây đó.

Bài toán yêu cầu bạn hãy tìm cách cắt cây sao cho trọng số to nhất của các cây là nhỏ nhất.

Input

Dòng đầu tiên gồm 2 số N, K (K < N)

Dòng tiếp theo gồm N số là trọng số của các đỉnh

N-1 dòng tiếp theo, mỗi dòng gồm 2 số u, v mô tả một cạnh của cây

Output

Một số nguyên duy nhất là trọng số bé nhất.

Giới hạn

  • 0 <= K < N <= 10^5
  • 0 < w[i] <= 10^4
  • Trong 20% số test, N <= 20
  • Trong 20% số test tiếp theo, N <= 200
  • Trong 20% số test tiếp theo, N <= 1000, trọng số các đỉnh bằng 1.

Sau khi kết thúc kỳ thi, kết quả của bạn là kết quả lần nộp bài cuối cùng

Example

Input:

8 2
7 4 3 8 5 7 5 4
2 1
3 1
4 3
5 2
6 1
7 6
8 1

Output:

20

Được gửi lên bởi:VOJ Team
Ngày:2015-08-17
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:C C++ 4.3.2 CPP CPP14 JAVA PAS-GPC PAS-FPC
Nguồn bài:VM15 - Minh

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.