CF2092B Lady Bug
题目描述
当 Dasha Purova 刚越过法国边境时,反派 Markaron 绑架了她并将她关押在其城堡下的监狱中。幸运的是,神奇的 Lady Bug 得知 Dasha 的消息后立即赶往 Markaron 的城堡营救她。然而,她需要破解一个复杂密码才能进入。
该密码由两个长度为 $n$ 的比特字符串 $a$ 和 $b$ 组成。Lady Bug 在一次操作中可以选择任意索引 $2 \leq i \leq n$ 并执行以下两种操作之一:
1. 交换($a_i$, $b_{i-1}$)(交换 $a_i$ 和 $b_{i-1}$ 的值),或
2. 交换($b_i$, $a_{i-1}$)(交换 $b_i$ 和 $a_{i-1}$ 的值)。
Lady Bug 可以进行任意次数的操作。若她能使第一个字符串 $a$ 仅由 0 组成,则视为密码破解成功。请帮助她判断是否能成功营救 Dasha。
输入格式
每个测试包含多个测试用例。输入数据第一行包含一个整数 $t$ ($1 \leq t \leq 10^4$) —— 测试用例数量。接下来是测试用例描述。
每个测试用例的第一行包含一个整数 $n$ ($2 \leq n \leq 2 \cdot 10^5$) —— 密码比特字符串的长度。
接下来两行各包含一个长度为 $n$ 的比特字符串 $a$ 和 $b$,表示密码。每个字符串仅包含字符 0 和 1。
保证所有测试用例的 $n$ 之和不超过 $2 \cdot 10^5$。
输出格式
对于每个测试用例,若 Lady Bug 能通过任意次操作破解密码,则输出 "YES";否则输出 "NO"。
可以以任意大小写形式输出每个字母。例如,"yEs"、"yes"、"Yes" 和 "YES" 均会被接受为肯定答案。
说明/提示
第一个测试用例中,字符串 $a$ 本身已全为 0。
第二个测试用例中,一种可能的操作序列为:
1. 交换$(a_2, b_{1})$
$$$\mathtt{0{\color{red}{1}}0001}$$$
$$$\mathtt{{\color{red}{0}}10111}$$$
2. 交换$(b_5, a_{4})$
$$$\mathtt{000{\color{red}{0}}01}$$$
$$$\mathtt{1101{\color{red}{1}}1}$$$
3. 交换$(a_4, b_{3})$
$$$\mathtt{000{\color{red}{1}}01}$$$
$$$\mathtt{11{\color{red}{0}}101}$$$
4. 交换$(a_5, b_{4})$
$$$\mathtt{00000{\color{red}{1}}}$$$
$$$\mathtt{1111{\color{red}{0}}1}$$$
翻译由 DeepSeek R1 完成