AT_arc228_b [ARC228B] Minimize Topological Order

Description

$ (1,2,\dots,N) $ の順列 $ P=(P_1,P_2,\dots,P_N) $ と長さ $ N $ の正整数列 $ A=(A_1,A_2,\dots,A_N) $ が与えられます。 頂点に $ 1 $ から $ N $ の番号が付いた $ N $ 頂点の根付き木 $ T $ に対して、以下で $ f(T) $ を定義します。 > $ (1,2,\dots,N) $ の順列 $ Q=(Q_1,Q_2,\dots,Q_N) $ のうち、以下の条件を満たすものを**良い順列**と呼ぶ。 > > - 根以外の全ての頂点 $ v $ に対して、 $ v $ の親を頂点 $ u $ とした時、 $ Q $ において $ u $ は $ v $ より前に現れる。 > > **良い順列**のうち、辞書順最小のものを $ f(T) $ とする。 また、 $ N $ 頂点の根付き木 $ T $ のコストを $ \sum_{i=1}^{N} A_i c_i^2 $ と定義します。ここで、 $ c_i $ は $ T $ における頂点 $ i $ の子の個数です。 $ N $ 頂点の根付き木 $ T $ のうち $ f(T) = P $ を満たすものに対する $ T $ のコストの最小値を求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ P_1\ P_2\ \dots\ P_N $ $ A_1\ A_2\ \dots\ A_N $

Output Format

答えを出力せよ。

Explanation/Hint

### Sample Explanation 1 $ T $ として条件を満たすのは、頂点 $ 1 $ を根とした木のうち以下の $ T_1,T_2 $ の $ 2 $ 個です。 $ T_1 $ のコストは $ 1 \times 2^2 + 2 \times 0^2 + 1 \times 0^2 = 4 $ 、 $ T_2 $ のコストは $ 1 \times 1^2 + 2 \times 1^2 + 1 \times 0^2 = 3 $ であるため、コストの最小値は $ 3 $ です。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_arc228_b/cf9300e56ac01dae51920457d36a2acbd06c61d04710bd961f2f72bc3a1126fe.png) ### Constraints - $ 1 \le N \le 2 \times 10^5 $ - $ P $ は $ (1,2,\dots,N) $ の順列 - $ 1 \le A_i \le 10^6 $ - 入力される値は全て整数