9550.最糖的题目

Time Limit: 4s Memory Limit: 512MB

松鼠学 OI 时发现了若干小甜点,cx 表示在做出这道题后就允许他吃。

cx 的问题很简单,他想知道对于给定的两个序列 $a_i, b_i$,能否通过任意次操作使得两个序列完全相同。

合法的操作为:对于固定的参数 $k$,任意选择 $a_i, b_i$ 中的一个,并选择它的一个长度为 $k$ 的子区间,并对这个子区间做 shift 操作。

shift 操作的定义为:将 $a_i, \cdots, a_{i+k-1}$ 变为 $a_{i+k-1}, a_i, a_{i+1},\cdots, a_{i+k-2}$。

Input Format(From the terminal/stdin)

本题有多组测试数据。第一行一个正整数 $T$,表示数据组数,接下来输入每组测试数据。

对于每组测试数据:

  • 第一行两个正整数 $n,k$,分别表示序列长度和固定参数。
  • 第二行 $n$ 个正整数,表示序列 $a_i$。
  • 第三行 $n$ 个正整数,表示序列 $b_i$。

Output Format(To the terminal/stdout)

对于每组测试数据,输出 YESNO 表示答案。(严格区分大小写)

Sample Input

Copy
2
5 3
1 2 3 4 5
5 4 3 2 1
5 2
1 1 4 5 1
1 2 3 4 5 \n
 · \n
 · · · · \n
 · · · · \n
 · \n
 · · · · \n
 · · · · \n

Sample Output

Copy
YES
NO   \n
  \n

Hints

对于所有测试数据,$1\leq T\leq 1000$,$1\leq k\leq n\leq 10^5, 1\leq a_i,b_i\leq 10^9$。保证每个测试点的 $n$ 之和 $\leq 5\times 10^6$。

Source: 2025“钉耙编程”中国大学生算法设计暑期联赛(8), HDU, 8066

Submit

请先 登录

© 2025 FAQs