「LAOI-19」同理,后面忘了
题号:NC316113
时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

\hspace{15pt}前面忘了,中间忘了,后面也忘了。
\hspace{15pt}定义一个长度为 n 的序列 a_1, a_2, \dots, a_n「同理于」等长的序列 b_1, b_2, \dots, b_n,当且仅当对于所有 1\le i < j\le na_i = a_j,均有 b_i = b_j 成立。例如:
\hspace{23pt}\bullet\,[2, 2, 3, 3]「同理于」[1, 1, 4, 4]
\hspace{23pt}\bullet\,[0, 7, 2, 1]「同理于」[0, 3, 0, 7]
\hspace{23pt}\bullet\,[1, 1, 4, 5, 1, 4]「同理于」[2, 2, 1, 1, 2, 1]
\hspace{23pt}\bullet\,[0, 1, 0, 1] 不「同理于」 [0, 1, 1, 1]

\hspace{15pt}现给定两个长度为 n 的序列 AB,你可以执行以下任意次操作:
\hspace{23pt}\bullet\,选定一个 A_i 将其修改为 1n 的任意一个正整数;
\hspace{15pt}求解最少操作次数,使得 A「同理于」B

输入描述:

\hspace{15pt}第一行输入一个整数 n \left(1 \le n \le 10^6\right),表示序列长度。
\hspace{15pt}第二行输入 n 个整数 A_1, A_2, \dots, A_n \left(1 \le A_i \le n\right),表示序列 A
\hspace{15pt}第三行输入 n 个整数 B_1, B_2, \dots, B_n \left(1 \le B_i \le n\right),表示序列 B

输出描述:

\hspace{15pt}输出一个整数,使得 A「同理于」B 需要的最少操作次数。
示例1

输入

复制
5
1 2 3 4 4
3 2 1 5 5

输出

复制
0

说明

\hspace{15pt}在这个样例中,A 本身已经「同理于」 B,不需要修改元素。
示例2

输入

复制
10
1 1 3 4 1 1 3 4 3 4
1 2 3 10 1 2 3 7 10 10

输出

复制
4

说明

\hspace{15pt}在这个样例中,其中一种最优方案是:
\hspace{23pt}\bullet\,A_2 修改为 2
\hspace{23pt}\bullet\,A_6 修改为 2
\hspace{23pt}\bullet\,A_8 修改为 5
\hspace{23pt}\bullet\,A_9 修改为 4
\hspace{15pt}此时修改后的 A 变为 [1,\,{\color{orange}{2}},\,3,\,4,\,1,\,{\color{orange}{2}},\,3,\,{\color{orange}{5}},\,{\color{orange}{4}},\,4],满足「同理于」B 的条件。