#P11842. [USACO25FEB] Bessie's Function G

[USACO25FEB] Bessie's Function G

题目描述

Bessie 有一个特别的函数 f(x)f(x),接收一个 [1,N][1, N] 内的整数作为输入,并返回一个 [1,N][1, N] 内的整数(1N21051 \le N \le 2 \cdot 10^5)。她的函数 f(x)f(x)NN 个整数 a1aNa_1 \ldots a_N 定义,其中 f(x)=axf(x) = a_x1aiN1 \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_iaia_i 的值修改为 [1,N][1, N] 内的任意整数(1ci1091 \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) 变为幂等所需要的最小总代价。

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

提示

样例 1 解释:

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

样例 2 解释:

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

  • 测试点 33: N20N \le 20
  • 测试点 494\sim 9: aiia_i \ge i
  • 测试点 101510\sim 15: 所有 aia_i 各不相同。
  • 测试点 162116\sim 21: 没有额外限制。

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