CF1730D.Prefixes and Suffixes
提高+/省选-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You have two strings s1 and s2 of length n, consisting of lowercase English letters. You can perform the following operation any (possibly zero) number of times:
- Choose a positive integer 1≤k≤n.
- Swap the prefix of the string s1 and the suffix of the string s2 of length k.
Is it possible to make these two strings equal by doing described operations?
你有两个长度为 n 的字符串 s1 和 s2,均由小写英文字母组成。你可以执行以下操作任意次(可以为零次):
- 选择一个正整数 1≤k≤n;
- 交换字符串 s1 的长度为 k 的前缀与字符串 s2 的长度为 k 的后缀。
能否通过执行上述操作使得这两个字符串相等?
输入格式
The first line contains a single integer t (1≤t≤104) — the number of test cases. Then the test cases follow.
Each test case consists of three lines.
The first line contains a single integer n (1≤n≤105) — the length of the strings s1 and s2.
The second line contains the string s1 of length n, consisting of lowercase English letters.
The third line contains the string s2 of length n, consisting of lowercase English letters.
It is guaranteed that the sum of n for all test cases does not exceed 2⋅105.
第一行包含一个整数 t(1≤t≤104)—— 表示测试用例的数量。随后是各测试用例。
每个测试用例由三行组成。
第一行包含一个整数 n(1≤n≤105)—— 表示字符串 s1 和 s2 的长度。
第二行包含一个长度为 n 的字符串 s1,由小写英文字母组成。
第三行包含一个长度为 n 的字符串 s2,由小写英文字母组成。
保证所有测试用例的 n 之和不超过 2⋅105。
输出格式
For each test case, print "YES" if it is possible to make the strings equal, and "NO" otherwise.
对于每个测试用例,如果可以使两个字符串相等,则输出 “YES”;否则输出 “NO”。
输入输出样例
输入#1
7 3 cbc aba 5 abcaa cbabb 5 abcaa cbabz 1 a a 1 a b 6 abadaa adaaba 8 abcabdaa adabcaba
输出#1
YES YES NO YES NO NO YES
说明/提示
In the first test case:
- Initially s1=cbc, s2=aba.
- Operation with k=1, after the operation s1=abc, s2=abc.
In the second test case:
- Initially s1=abcaa, s2=cbabb.
- Operation with k=2, after the operation s1=bbcaa, s2=cbaab.
- Operation with k=3, after the operation s1=aabaa, s2=cbbbc.
- Operation with k=1, after the operation s1=cabaa, s2=cbbba.
- Operation with k=2, after the operation s1=babaa, s2=cbbca.
- Operation with k=1, after the operation s1=aabaa, s2=cbbcb.
- Operation with k=2, after the operation s1=cbbaa, s2=cbbaa.
In the third test case, it's impossible to make strings equal.
在第一个测试用例中:
- 初始时 s1=cbc,s2=aba。
- 执行 k=1 的操作后,s1=abc,s2=abc。
在第二个测试用例中:
- 初始时 s1=abcaa,s2=cbabb。
- 执行 k=2 的操作后,s1=bbcaa,s2=cbaab。
- 执行 k=3 的操作后,s1=aabaa,s2=cbbbc。
- 执行 k=1 的操作后,s1=cabaa,s2=cbbba。
- 执行 k=2 的操作后,s1=babaa,s2=cbbca。
- 执行 k=1 的操作后,s1=aabaa,s2=cbbcb。
- 执行 k=2 的操作后,s1=cbbaa,s2=cbbaa。
在第三个测试用例中,无法使两个字符串相等。
输入解题思路,AI测评打分。不知道怎么写?