AT_aising2019_e Attack to a Tree

Description

[problemUrl]: https://atcoder.jp/contests/aising2019/tasks/aising2019_e A 社のサーバーは $ 1,\ 2,\ ...,\ N $ の番号がついた $ N $ 個のデバイスを $ N\ -\ 1 $ 本のケーブルで接続した構造をしています。 $ i $ 本目のケーブルはデバイス $ U_i $ とデバイス $ V_i $ を接続しています。 どの異なる $ 2 $ つのデバイスも何本かのケーブルを介して接続されています。 各デバイス $ v $ ($ 1\ \leq\ v\ \leq\ N $) には $ 0 $ でない整数 $ A_v $ が割り当てられています。 これらの整数は以下のことを表します。 - $ A_v\ \ 0 $ のとき、デバイス $ v $ はバッテリーであり、大きさ $ A_v $ の電力を供給できることを表す。 あなたは何本か ($ 0 $ 本以上) のケーブルを切断することで A 社のサーバーの機能を停止させることにしました。 ケーブルを切断するとデバイスはいくつかの連結成分に分かれます。 これら連結成分がすべて以下のいずれかの条件を満たすようになれば、サーバーは機能を停止します。 - 連結成分に属する各デバイス $ v $ に対する $ A_v $ の値がすべて正である。すなわち、連結成分にコンピュータが存在しない。 - 連結成分に属する各デバイス $ v $ に対する $ A_v $ の値の和が負である。すなわち、連結成分における電力供給が不足している。 サーバーの機能を停止させるためには、最小で何本のケーブルを切断すれば良いでしょうか。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ A_1 $ $ A_2 $ $ ... $ $ A_N $ $ U_1 $ $ V_1 $ $ U_2 $ $ V_2 $ $ : $ $ U_{N\ -\ 1} $ $ V_{N\ -\ 1} $

Output Format

答えを出力せよ。

Explanation/Hint

### 制約 - $ 1\ \leq\ N\ \leq\ 5,000 $ - $ 1\ \leq\ |A_i|\ \leq\ 10^9 $ ($ 1\ \leq\ i\ \leq\ N $) - $ 1\ \leq\ U_i,\ V_i\ \leq\ N $ ($ 1\ \leq\ i\ \leq\ N\ -\ 1 $) - $ U_i\ \neq\ V_i $ ($ 1\ \leq\ i\ \leq\ N\ -\ 1 $) - どの異なる $ 2 $ つのデバイスも何本かのケーブルを介して接続されている。 - 入力値はすべて整数である。 ### Sample Explanation 1 デバイス $ 1 $ とデバイス $ 2 $ を結ぶケーブルを切断すればよいです。