#CT0207. blg的课堂作业

blg的课堂作业

题目描述

今天 blg 在学校里上课,老师布置了一个作业:

  • 给你两个长度相同且只包含小写字符的字符串 s1s_1s2s_2
  • 你可以把 s2s_2 中的第 ii 个字符跟第 i+ki+k 个字符交换。
  • 你可以进行无限次的上述操作。

请问是否可以使 s1=s2s_1=s_2

blg 是个笨蛋,他希望你可以在 1 秒中之内做完作业给他抄。你能帮帮他吗?

输入格式

第一行是一个整数 TT

接下来 TT 行,每行有一个数字 kk,以及两个字符串 s1s_1s2s_2

输出格式

对于每组数据,如果可以输出 YES,否则输出 NO

测试样例

3
1 ab ba
1 abcd dbca
1 ab ac
YES
YES
NO
4
2 ab ba
3 abcd dbca
2 abcd acbd
100 aaa aaa
NO
YES
NO
YES

样例说明

在样例1中,kk 都等于 11,每次只能与周围 11 格的位置交换。

对第(1)个子样例,直接交换两个字符即可相等。

对第(2)个子样例,可以先把 a 交换到最左侧得到 adbc ,然后把 d 交换到最右侧得到 abcd

对第(3)个子样例,由于字符不一样,无论怎么换都不相等。

在样例2中:

对第(1)个子样例,无法进行任何交换。

对第(2)个子样例,由于 k=3k=3,因此可以将 ad 进行交换得到 abcd

对第(3)个子样例,由于 k=2k=2,无论如何交换都无法是两个字符串相等。

对第(4)个子样例,由于一开始就相等,不需要任何交换。

数据规模说明

30%30\% 的数据,1T1001≤T≤100k=1k=1,字符串长度不超过 1010

100%100\% 的数据,1T100001≤T≤100001k1001≤k≤100,单测试点的字符串总长度不超过 2×1052×10^5