A9578.替换子串使两串相等

普及/提高-

通过率:0%

时间限制:2.00s

内存限制:256MB

题目描述

给你两个长度均为 nn 的字符串 sstt。两个字符串中的每个字符都是 'a''b''c'

在一次移动中,你可以执行以下操作之一:

  • 选择 ss 中的一个子字符串 "ab" 将其替换为 "ba"
  • 选择 ss 中的一个子字符串 "bc" 将其替换为 "cb"

你可以执行任意次上述操作。能否将字符串 ss 变为与字符串 tt 相等?

输入格式

每个测试点包含多个测试用例。第一行为测试用例的总数 q(1q104)q(1 \le q \le 10^4)

每个测试用例的第一行表示字符串 sstt 的大小 n(1n105)n(1 \le n \le 10^5)

每个测试用例的第二行为一个长度为 nn 的字符串 ss 仅由小写字母 'a''b''c' 构成。

每个测试用例的第三行为一个长度为 nn 的字符串 tt 仅由小写字母 'a''b''c' 构成。

题目保证所有测试用例的 nn 的总和不超过 2×1062 \times 10^6

输出格式

对于每个测试用例,如果通过执行任意数量的操作(可能为零)就能改变字符串 ss 使其等于字符串 tt ,则输出 YES\tt{YES}。否则输出 NO\tt{NO}

你可以输出 YES\tt{YES}NO\tt{NO} 的任意大小写形式(例如,字符串 yEs\tt{yEs}yes\tt{yes}Yes\tt{Yes}YES\tt{YES} 都会被视为正确答案)。

输入输出样例

  • 输入#1

    5
    3
    cab
    cab
    1
    a
    b
    6
    abbabc
    bbaacb
    10
    bcaabababc
    cbbababaac
    2
    ba
    ab

    输出#1

    YES
    NO
    YES
    YES
    NO
首页