#5319. [USACO25FEB] Bessie's Function G

[USACO25FEB] Bessie's Function G

题目描述

Bessie 有一个特别的函数 f(x)f(x),接收一个 [1,N][1, N] 内的整数作为输入,并返回一个 [1,N][1, N] 内的整数(1≤N≤2⋅1051 \le N \le 2 \cdot 10^5)。她的函数 f(x)f(x) 由 NN 个整数 a1…aNa_1 \ldots a_N 定义,其中 f(x)=axf(x) = a_x(1≤ai≤N1 \le a_i \le N)。

Bessie 希望这个函数是幂等的。换句话说,它应当对于所有整数 x∈[1,N]x \in [1, N] 满足 f(f(x))=f(x)f(f(x)) = f(x)。

Bessie 可以以代价 cic_i 将 aia_i 的值修改为 [1,N][1, N] 内的任意整数(1≤ci≤1091 \le c_i \le 10^9)。求 Bessie 使 f(x)f(x) 变为幂等所需要的最小总代价。

输入格式

输入的第一行包含 NN。

第二行包含 NN 个空格分隔的整数 a1,a2,…,aNa_1,a_2,\dots,a_N。

第三行包含 NN 个空格分隔的整数 c1,c2,…,cNc_1,c_2,\dots,c_N。

输出格式

输出 Bessie 使 f(x)f(x) 变为幂等所需要的最小总代价。

输入输出样例 #1

输入 #1

5
2 4 4 5 3
1 1 1 1 1

输出 #1

3

输入输出样例 #2

输入 #2

8
1 2 5 5 3 3 4 4
9 9 2 5 9 9 9 9

输出 #2

7

说明/提示

样例 1 解释:

我们可以修改 a1=4a_1 = 4,a4=4a_4 = 4,a5=4a_5 = 4。由于所有 cic_i 均等于 11,所以总代价等于 33,即修改的数量。可以证明,不存在仅进行 22 次或更少修改的解。

样例 2 解释:

我们修改 a3=3a_3 = 3 以及 a4=4a_4 = 4。总代价为 2+5=72+5=7。

  • 测试点 33: N≤20N \le 20。
  • 测试点 4∼94\sim 9: ai≥ia_i \ge i。
  • 测试点 10∼1510\sim 15: 所有 aia_i 各不相同。
  • 测试点 16∼2116\sim 21: 没有额外限制。

除此之外,在后三个子任务中,前一半的测试点将满足对于所有 ii 有 ci=1c_i=1。