Dãy con tăng dài nhất trên cây

Cho một cây gồm $n$ đỉnh. Mỗi đỉnh có một giá trị nguyên không âm $v_i$.

Một dãy con trên cây là một dãy các đỉnh $S = s_1, s_2, ..., s_k$ sao cho tồn tại các đỉnh $u, v$ trên cây mà $S$ là một dãy con của đường đi ngắn nhất duy nhất bắt đầu tại $u$ và kết thúc tại $v$.

Một dãy con trên cây được gọi là dãy con tăng nếu với mọi $1 ≤ i ≤ k - 1$, ta có $v_{s_i} < v_{s_{i+1}}$ (Lưu ý rằng điều này tương ứng với một dãy tăng ngặt).

Hãy tìm độ dài của dãy con trên cây tăng dài nhất.

Dữ liệu vào

Dòng đầu tiên chứa một số nguyên duy nhất $n$ ($1 ≤ n ≤ 3 · 10^5$) --- số lượng đỉnh của cây.

Dòng thứ hai chứa $n$ số nguyên $v_1, v_2, ..., v_n$ ($1 ≤ v ≤ 10^9$) --- giá trị của mỗi đỉnh trên cây.

$n - 1$ dòng tiếp theo, mỗi dòng chứa hai số nguyên $a_i, b_i$ ($1 ≤ a_i, b_i ≤ n$) --- các đỉnh đầu mút của cạnh thứ $i$.

Dữ liệu đảm bảo rằng các cạnh được cho tạo thành một cây.

Kết quả

In ra một số nguyên duy nhất --- độ dài của dãy con trên cây tăng dài nhất.

Nộp bài

Đăng nhập để nộp bài.

Giới hạn

Thời gian 2.0s
Bộ nhớ 256MB
Tổng điểm 50.0