AT_arc220_b [ARC220B] Incomplete Shuffle
题目描述
给定一个正整数 $N$ 和两个长度为 $N$ 的整数序列 $A=(A_1,A_2,\ldots,A_N)$ 以及 $B=(B_1,B_2,\ldots,B_N)$。
你需要对 $A$ 执行 $N-1$ 次操作。第 $i$ 次操作 $(1\le i\le N-1)$ 方式如下:
- 选择一个满足 $i < j \le N$ 的整数 $j$,交换 $A_i$ 和 $A_j$ 的值。
请你在进行了 $N-1$ 次操作后,求出可以使满足 $A_k = B_k$ 的下标 $k$($1\le k\le N$)的最大数量。
有 $T$ 组测试数据,请你依次输出每组测试数据的答案。
输入格式
输入从标准输入中读入,格式如下:
> $T$
> $\text{case}_1$
> $\text{case}_2$
> $\vdots$
> $\text{case}_T$
每组测试数据格式如下:
> $N$
> $A_1\ A_2\ \ldots\ A_N$
> $B_1\ B_2\ \ldots\ B_N$
输出格式
按顺序输出每组测试数据的答案,每个答案占一行。
说明/提示
### 样例解释 1
考虑第一组测试数据。
通过如下操作,可以使得最后满足 $A_k=B_k$ 的下标 $k$ 的数量达到 $2$。
- 当 $i=1$ 时,选择 $j=2$,交换后 $A=(1,1,2)$。
- 当 $i=2$ 时,选择 $j=3$,交换后 $A=(1,2,1)$。
在完成 $N-1$ 次操作后,最多有 $2$ 个下标 $k$ 满足 $A_k=B_k$,所以第一行输出 $2$。
### 数据范围
- $1\le T\le 10^5$
- $2\le N\le 3\times 10^5$
- $1\le A_i,B_i\le N$
- 所有测试数据中 $N$ 的总和不超过 $3\times 10^5$
- 所有的输入值均为整数。
由 ChatGPT 5 翻译