滚轮
时间限制:2s
空间限制:512MB
题目描述
给定两个长度为 N 的正整数序列 A=(A1,A2,…,AN) 和 B=(B1,B2,…,BN)。
你可以任意次数(也可以不进行)重复以下操作:选择一个满足 1≤i≤N 的整数 i,将 Ai 替换为 Ai+1。其中 AN+1 视为 A1。
请判断是否可以通过若干次操作将 A 变为 B。
输入格式
第一行包含一个整数 T,表示测试用例数。
接下来每组测试用例包含三行:
- 第一行包含一个整数 N;
- 第二行包含 N 个整数 A1,A2,…,AN;
- 第三行包含 N 个整数 B1,B2,…,BN。
输出格式
输出 T 行。对于第 i 组测试用例,若可以将 A 变为 B,输出 Yes;否则输出 No。
样例输入 1
3
2
1 2
2 2
4
2 3 1 1
2 1 1 2
2
1 1
2 2
样例输出 1
Yes
Yes
No
样例解释
对于第一组测试用例,选择 i=1,操作后 A=(2,2)。
对于第二组测试用例,先选择 i=4 得到 A=(2,3,1,2),再选择 i=2 即可得到 B。
对于第三组测试用例,无论如何操作都无法将 A 变为 B。
数据范围
- 1≤T≤5000;
- 1≤N≤5000;
- 1≤Ai,Bi≤N;
- 同一输入文件中所有测试用例的 N 之和不超过 5000。
| 子任务编号 |
分值 |
特殊限制 |
| 1 |
10 |
T≤20 且 N≤6 |
| 2 |
20 |
每组测试用例中,Bi=Bi+1 对所有 1≤i≤N 成立,其中 BN+1=B1 |
| 3 |
30 |
每组测试用例中,A 的所有元素两两不同 |
| 4 |
40 |
无特殊限制 |