题目描述

给定一个由 'A','B','C' 组成的长度为 $ N $ 的字符串 $ X $ 和 $ Y $。

判断是否存在一系列操作,可以使 $ X $ 变为 $ Y $。

操作规则如下:

  • 操作 (1):选择 $ X $ 中的一个字符 'C',将其替换为 'A'。
  • 操作 (2):选择 $ X $ 中的一个字符 'C',将其替换为 'B'。
  • 操作 (3):选择 $ X $ 中的一个子字符串 'AB',将其替换为 'BA'。

给定 $ T $ 个测试用例,请求每个测试用例的答案。

输入

输入具有以下格式。

$ T $

$ \text{case}_1 $

$ \vdots $

$ \text{case}_T $

每个测试用例的格式如下。

$ N $ $ X $ $ Y $

输出

输出 $ T $ 行。对于第 $ i $ 个测试用例,输出是否存在操作序列使得 $ X $ 变为 $ Y $。如果存在,请输出 'Yes',否则输出 'No'。

限制

  • $ 1\leq\ T\leq\ 2\times\ 10^5 $
  • $ 1\leq\ N\leq\ 2\times\ 10^5 $
  • $ X $ 和 $ Y $ 是由 'A','B','C' 组成的长度为 $ N $ 的字符串。
  • 对于一个输入,所有测试用例的 $ N $ 的总和不超过 $ 2\times\ 10^5 $。

样例 1 解释

  • 对于第一个测试用例:不需要进行任何操作,$ X $ 已经等于 $ Y $。
  • 对于第二个测试用例:可以通过操作 (2) 将 $ X $ 变为 $ Y $。
  • 对于第四个测试用例:可以通过操作 (3) 将 $ X $ 变为 $ Y $。
  • 对于第六个测试用例:可以通过操作 (3) 将 $ X $ 变为 $ Y $。
判断字符串是否可以通过操作转化为目标字符串

原文地址: https://www.cveoy.top/t/topic/pcXw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录