AT_abc296_f [ABC296F] Simultaneous Swap

题目描述

给定长度为 $N$ 的数列 $A=(A_1,A_2,\ldots,A_N)$,$B=(B_1,B_2,\ldots,B_N)$。 高桥君可以任意次(也可以一次都不做)重复以下操作: > 选择 $1$ 到 $N$ 之间任意互不相同的 $3$ 个整数 $i,j,k$。 > 将 $A$ 的第 $i$ 个元素与第 $j$ 个元素交换,同时将 $B$ 的第 $i$ 个元素与第 $k$ 个元素交换。 如果高桥君能够通过若干次操作使 $A$ 和 $B$ 完全相同(即对于任意 $1\leq i\leq N$,都有 $A_i=B_i$),请输出 `Yes`,否则输出 `No`。

输入格式

输入以如下格式从标准输入读入。 > $N$ $A_1$ $A_2$ $\ldots$ $A_N$ $B_1$ $B_2$ $\ldots$ $B_N$

输出格式

如果高桥君能够通过若干次操作使 $A$ 和 $B$ 完全相同,则输出 `Yes`,否则输出 `No`。

说明/提示

### 限制条件 - $3\leq N\leq 2\times 10^5$ - $1\leq A_i,B_i\leq N$ - 输入均为整数 ### 样例解释 1 通过一次操作,选择 $(i,j,k)=(1,2,3)$,可以将 $A_1$ 和 $A_2$ 交换,同时将 $B_1$ 和 $B_3$ 交换,此时 $A,B$ 都变为 $(2,1,1)$,因此输出 `Yes`。 ### 样例解释 2 无论如何操作,都无法使 $A$ 和 $B$ 完全一致,因此输出 `No`。 由 ChatGPT 4.1 翻译