#P9342. 双置换

双置换

题面翻译

【题意简述】

给定两个 0(N1)0 \sim (N - 1) 的排列 {P0,P1,,PN1}\{P_0, P_1, \ldots , P_{N - 1}\}{Q0,Q1,,QN1}\{Q_0, Q_1, \ldots , Q_{N - 1}\}

要求构造两个 0(N1)0 \sim (N - 1) 的排列 {A0,A1,,AN1}\{A_0, A_1, \ldots , A_{N - 1}\}{B0,B1,,BN1}\{B_0, B_1, \ldots , B_{N - 1}\}

且必须满足条件:

  • AiA_i 要么等于 ii,要么等于 PiP_i
  • BiB_i 要么等于 ii,要么等于 QiQ_i

你需要最大化 AiBiA_i \ne B_i 的下标 ii 的数量,输出这个最大值。

【输入格式】

第一行一个整数 NN。 第二行 NN 个整数 P0,P1,,PN1P_0, P_1, \ldots , P_{N - 1}。 第三行 NN 个整数 Q0,Q1,,QN1Q_0, Q_1, \ldots , Q_{N - 1}

【输出格式】

输出一个整数表示答案。

【数据范围】

对于 100%100\% 的数据,1N1051 \le N \le {10}^5

样例 #1

样例输入 #1

4
2 1 3 0
0 2 3 1

样例输出 #1

3

样例 #2

样例输入 #2

10
0 4 5 3 7 8 2 1 9 6
3 8 5 6 4 0 2 1 7 9

样例输出 #2

8

样例 #3

样例输入 #3

32
22 31 30 29 7 17 16 3 14 9 19 11 2 5 10 1 25 18 15 24 20 0 12 21 27 4 26 28 8 6 23 13
22 3 2 7 17 9 16 4 14 8 19 26 28 5 10 1 25 18 15 13 11 0 12 23 21 20 29 24 27 6 30 31

样例输出 #3

28

提示

制約

  • 1  N  100000 1\ \leq\ N\ \leq\ 100000
  • 0  Pi  N1 0\ \leq\ P_i\ \leq\ N-1
  • P0,P1,,PN1 P_0,P_1,\cdots,P_{N-1} はすべて異なる。
  • 0  Qi  N1 0\ \leq\ Q_i\ \leq\ N-1
  • Q0,Q1,,QN1 Q_0,Q_1,\cdots,Q_{N-1} はすべて異なる。
  • 入力される値はすべて整数である。

Sample Explanation 1

例えば、A=(0,1,2,3), B=(0,2,3,1) A=(0,1,2,3),\ B=(0,2,3,1) とすると距離が 3 3 になり、これが最大です。