Cây cùng màu

Xem PDF



Tác giả:
Dạng bài
Điểm: 500 Thời gian: 1.0s Bộ nhớ: 1G Input: bàn phím Output: màn hình

ami có một đồ thị dạng cây gồm \(n\) nút, mỗi nút được đánh số từ 1. Nút \(i\) được tô màu \(a_i\).

ami cần các bạn tính tổng tất cả đường đi ngắn nhất giữa hai nút u và v được tô cùng một chung màu. Tổng có thể được biểu diễn như sau:

\(\sum dist(u , v)\) \(\forall\) \(u \leq v\)\(a_u = a_v\).

Trong đó, \(dist(u , v)\) là độ dài đường đi ngắn nhất giữa hay nút \(u\)\(v\). Độ dài một đường đi từ u đến v được tính bằng tổng số cạnh nằm trên đường đi đó.

Input

  • Dòng đầu tiên chứa số nguyên dương \(n\) là số đỉnh của cây.

  • Dòng tiếp theo chứa \(n\) số nguyên dương \(a_i\) biểu thị một màu của đỉnh \(i\).

  • \(n\) dòng tiếp theo, môi dòng chứa \(2\) số nguyên dương \(u\)\(v\) biểu thị một cạnh nối giữa hai đỉnh \(u\)\(v\).

Output

  • Hãy in ra tổng cần tìm

Scoring

  • Subtask \(1\) (\(18\%\) số điểm): \(1 \leq n \leq 10\)\(1 \leq a_i \leq 3*10^5\).

  • Subtask \(2\) (\(18\%\) số điểm): \(1 \leq n \leq 1000\)\(1 \leq a_i \leq 3*10^5\).

  • Subtask \(3\) (\(18\%\) số điểm): \(1 \leq n \leq 3*10^5\)\(1 \leq a_i \leq 10\).

  • Subtask \(4\) (\(46\%\) số điểm): \(1 \leq n \leq 3*10^5\)\(1 \leq a_i \leq 3*10^5\).

Example

Test 1

Input
4
1 3 1 3
1 2
2 3
2 4
Output
3
Note

Ở ví dụ 1, đồ thị cây có dạng như sau:

Các đỉnh cùng màu là (1 , 3) và (2 , 4). Do đó, \(dist(1 , 3)\) + \(dist(2 , 4)\) = 2 + 1 = 3

Test 2

Input
9
1 1 1 2 3 2 2 1 1 
1 2
2 3
3 4
3 5
4 6
3 7
7 8
7 9
Output
30
Note

Ở ví dụ 2, đồ thị cây có dạng như sau:


Bình luận

Không có bình luận nào.