309391: CF1672D. Cyclic Rotation

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Cyclic Rotation

题意翻译

你会得到一个长度为 $n$ 的数组 $a$ ,进行以下操作: 选择两个数 $l,r$ 满足 $1\le l< r\le n$ 并且 $a[l]=a[r]$ ,将 $a[l...r]$ 替换为 $a[l+1,l+2,...r,l]$ 。 你还会得到一个长度为 $n$ 的数组 $b$ ,判断 $a$ 能否通过若干次操作变成 $b$ 。

题目描述

There is an array $ a $ of length $ n $ . You may perform the following operation any number of times: - Choose two indices $ l $ and $ r $ where $ 1 \le l < r \le n $ and $ a_l = a_r $ . Then, set $ a[l \ldots r] = [a_{l+1}, a_{l+2}, \ldots, a_r, a_l] $ . You are also given another array $ b $ of length $ n $ which is a permutation of $ a $ . Determine whether it is possible to transform array $ a $ into an array $ b $ using the above operation some number of times.

输入输出格式

输入格式


Each test contains multiple test cases. The first line contains a single integer $ t $ ( $ 1 \leq t \leq 10^4 $ ) — the number of test cases. The description of the test cases follows. The first line of each test case contains an integer $ n $ ( $ 1 \le n \le 2 \cdot 10 ^ 5 $ ) — the length of array $ a $ and $ b $ . The second line of each test case contains $ n $ integers $ a_1, a_2, \ldots, a_n $ ( $ 1 \le a_i \le n $ ) — elements of the array $ a $ . The third line of each test case contains $ n $ integers $ b_1, b_2, \ldots, b_n $ ( $ 1 \le b_i \le n $ ) — elements of the array $ b $ . It is guaranteed that $ b $ is a permutation of $ a $ . It is guaranteed that the sum of $ n $ over all test cases does not exceed $ 2 \cdot 10 ^ 5 $

输出格式


For each test case, print "YES" (without quotes) if it is possible to transform array $ a $ to $ b $ , and "NO" (without quotes) otherwise. You can output "YES" and "NO" in any case (for example, strings "yEs", "yes" and "Yes" will be recognized as a positive response).

输入输出样例

输入样例 #1

5
5
1 2 3 3 2
1 3 3 2 2
5
1 2 4 2 1
4 2 2 1 1
5
2 4 5 5 2
2 2 4 5 5
3
1 2 3
1 2 3
3
1 1 2
2 1 1

输出样例 #1

YES
YES
NO
YES
NO

说明

In the first test case, we can choose $ l=2 $ and $ r=5 $ to form $ [1, 3, 3, 2, 2] $ . In the second test case, we can choose $ l=2 $ and $ r=4 $ to form $ [1, 4, 2, 2, 1] $ . Then, we can choose $ l=1 $ and $ r=5 $ to form $ [4, 2, 2, 1, 1] $ . In the third test case, it can be proven that it is not possible to transform array $ a $ to $ b $ using the operation.

Input

题意翻译

你会得到一个长度为 $n$ 的数组 $a$ ,进行以下操作: 选择两个数 $l,r$ 满足 $1\le l< r\le n$ 并且 $a[l]=a[r]$ ,将 $a[l...r]$ 替换为 $a[l+1,l+2,...r,l]$ 。 你还会得到一个长度为 $n$ 的数组 $b$ ,判断 $a$ 能否通过若干次操作变成 $b$ 。

加入题单

算法标签: