#CF1906B. 按钮按压
按钮按压
B. 按钮按压
时间限制:$1$ 秒
内存限制:$1024$ MB
给定 个按钮(编号为 到 )和 盏灯(编号为 到 )。每盏灯要么处于亮着状态,要么处于熄灭状态。初始时,当 时,第 盏灯亮;当 时,第 盏灯灭。
按钮 与灯 相连(当 时)以及与灯 相连(当 时)。
在一次操作中,只有当第 盏灯当前是亮着的时候,才可以按下按钮 。当按钮被按下时,与该按钮相连的灯的状态会被翻转。也就是说:
- 如果某盏相连的灯原来是灭的,那么它会变亮;
- 如果某盏相连的灯原来是亮的,那么它会变灭。
注意,第 盏灯并不与按钮 相连,因此按下按钮 时,第 盏灯的状态不会发生变化。
经过若干次操作(也可以一次都不操作)后,你希望第 盏灯在且仅在 时亮着,在且仅在 时熄灭。请判断是否可以做到。
输入格式
本题有多组测试数据。
第一行包含一个整数 (),表示测试数据组数。
对于每组测试数据:
第一行包含一个整数 ()。
第二行包含一个长度为 的字符串 ,其中每个字符都是 0 或 1。第 个字符表示第 盏灯的初始状态。
第三行包含一个长度为 的字符串 ,其中每个字符都是 0 或 1。第 个字符表示第 盏灯的目标状态。
保证所有测试数据中 的总和不超过 。
输出格式
对于每组测试数据,如果可以通过若干次操作达到目标状态,输出 YES;否则输出 NO。
样例输入 1
2
4
0101
0100
3
000
010
样例输出 1
YES
NO
样例输入 2
5
7
0101011
1111010
5
11111
00000
4
1101
1101
6
101010
100100
3
000
000
样例输出 2
NO
NO
YES
YES
YES
说明
对于第一组样例输入中的第一组测试数据,可以依次按下按钮 。此时灯的状态变化如下:
0101 -> 0111 -> 1101 -> 1111 -> 1010 -> 1110 -> 0100
对于第一组样例输入中的第二组测试数据,一开始无法按下任何按钮,因此不可能到达目标状态。