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 完成