Submit solution


Points: 100.00
Time limit: 1.0s
Memory limit: 1G
Input: stdin
Output: stdout

Author:
Problem type
Allowed languages
C, C++, GAS64, Pascal, Perl, PHP, Python, Sed, TCL, Text

Bảo Bay Bổng có một đồ thị dạng cây gồm n đỉnh và n1 cạnh, đỉnh thứ i có trọng số là wi. Cậu nghĩ ra một thuật toán tính giá trị của cây như sau:

  • Bước 1: Chọn ra 1 đường kính bất kì của cây (giả sử đường kính này có số đỉnh là d), trong đó đường kính của cây là đường đi giữa hai đỉnh trong cây có khoảng cách lớn nhất.
  • Bước 2: Chọn một trong hai đầu mút của đường kính này làm đỉnh xuất phát và đánh số thứ tự đặc biệt cho các đỉnh này lần lượt từ 1 tới d dọc theo đường kính (xem ví dụ để hiểu rõ hơn).

Khi đó, đặt xi là số thứ tự đặc biệt được gán cho đỉnh có khoảng cách tới đỉnh i ngắn nhất trong số các đỉnh nằm trên đường kính được chọn. Ta nói giá trị của cây được tính bằng công thức:

S=i=1nwi.xi

Trong tất cả các cách thực hiện thuật toán trên lên cây đã cho, đặt Smax là giá trị lớn nhất của cây có thể đạt được. Hãy giúp Bảo Bay Bổng tìm ra giá trị Smax này.

Dữ liệu

  • Dòng đầu tiên chứa số nguyên dương n (2n106) — số đỉnh của cây.
  • Dòng thứ hai chứa n số nguyên dương w1,w2,...,wn(1wi106) — trọng số của các đỉnh trên cây.
  • n1 dòng tiếp theo, mỗi dòng chứa hai số nguyên dương u,v (1u,vn;uv), biểu thị có một cạnh nối giữa đỉnh u và đỉnh v. Dữ liệu bảo đảm tạo nên cấu trúc cây.

Kết quả

  • In ra một số nguyên là kết quả của bài toán.

Ví dụ

Sample Input 1
Copy
6
1 2 3 4 5 6
1 2
2 3
2 4
5 6
4 5
Sample Output 1
Copy
73

Giải thích

Trong test ví dụ, ta lựa chọn ra đường kính gồm các đỉnh 1,2,4,5,6 và đánh số thứ tự lần lượt vào các đỉnh này.

Giá trị của cây nếu ta thực hiện thuật toán như trên hình là: S=w1·1+w2·2+w3·2+w4·3+w5·4+w6·5=73 Cũng với ví dụ đó, ta có thể sử dụng thuật toán trên theo một cách khác nhưng thu được kết quả không phải là giá trị lớn nhất:

Giá trị của cây nếu ta thực hiện thuật toán như trên hình là: S=w3·1+w2·2+w1·2+w4·3+w5·4+w6·5=71

Chấm điểm

  • Subtask 1 (20% số test): n100
  • Subtask 2 (30% số test): n5000
  • Subtask 3 (50% số test): Không có ràng buộc gì thêm

Nguồn: Free Contest 124


Comments

Please read the guidelines before commenting.


There are no comments at the moment.