NAPC 2025 OPEN 2026/03/27 09:00 ~ 2026/03/27 14:15 5:15:00.000

E Sad World

問題
制限時間: 2 sec メモリ制限: 2048 MB
problem
ストーリー

失恋した全知全能のShika君は、世界が悲しくならないように運命の糸を操作することにしました。

問題文

この世界には $1,2,\ldots,N$ の番号がついた $N$ 人の人がいます。 人 $i$ は人 $A_i$ に片想いをしており、その片想いが叶ったときに得られる幸福度は $B_i$ です。 ただし、両想いのペアは存在しないことが保証されます。すなわち、すべての人 $i$ について、 $A_{A_i}\ne i$ です。

あなたは運命を操作し、以下の条件をすべて満たすように任意の人々の片想いを叶えることができます。

  • 人 $i$ の片想いを叶える場合、人 $A_i$ の片想いは叶えられない。
  • 異なる $2$ 人 $i,j$ の片想いをともに叶える場合、 $A_i\ne A_j$ である。

得られる幸福度の総和の最大値を求めてください。 ただし、誰も片想いを叶えなかったときに得られる幸福度の総和は $0$ とします。

$T$ 個のテストケースが与えられるので、それぞれについて解いてください。

制約
  • 入力は全て整数
  • $1\leq T\leq 10^5$
  • $3\leq N\leq 3\times 10^5$
  • $1\leq A_i\leq N$
  • $A_{A_i}\ne i$
  • $A_{i}\ne i$
  • $|B_i|\leq 10^9$
  • ひとつの入力ファイルに含まれる $N$ の総和は $3\times 10^5$ を超えない
入力

入力は以下の形式で標準入力から与えられます。

$T$
$case_1$
$case_2$
$\vdots$
$case_T$

ただし、 $case_i$ は $i$ 個目のテストケースを表し、以下の形式で与えられます。

$N$
$A_1$ $A_2$ $\ldots$ $A_N$
$B_1$ $B_2$ $\ldots$ $B_N$
出力

全体で $T$ 行出力してください。 $i$ 行目に $i$ 個目のテストケースの答えを出力してください。

入力例 1
4
4
2 3 4 1
4 5 3 1
5
3 1 2 3 3
-98 -50 70 0 100
3
3 1 2
-100 -99999 -50
10
2 8 2 10 7 8 1 3 7 9
3 2 7 7 6 3 4 0 5 1
出力例 1
7
100
0
23

$1$ つ目のテストケースについて、人 $1$ と人 $3$ の片想いを叶えたときが最大です。

$3$ つ目のテストケースについて、誰も片想いを叶えないときが最大です。