#include<bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int,int> PII; const ll mod=1e9+7; const int INF=0x3f3f3f3f; const int N = 1e5+10; #define ios ? ? ? ? ? ? ? ? ? ? ?\ ? ? ios::sync_with_stdio(false); \ ? ? cin.tie(0); ? ? ? ? ? ? ? ? ?\ ? ? cout.tie(0); int dp[2][4*N]; void solve() { ?? ?int n; cin >> n; ?? ?string s[2];? ?? ?cin >> s[0] >> s[1]; ?? ?int cnt = count(s[0].begin(), s[0].end(), 'B') +? ?? ??? ??? ??? ?count(s[1].begin(), s[1].end(), 'B'); ?? ?memset(dp,0,sizeof(dp)); ?? ?for(int j = 0; j < n; j++) ?? ?{ ?? ??? ?for(int i = 0; i < 2; i++) ?? ??? ?{ ?? ??? ??? ?if(s[i][j] == 'W') continue;? ?? ??? ??? ?if(j == 0) dp[i][j] = 1; ? ?? ??? ??? ?else if(s[i][j-1] == 'B') dp[i][j] = dp[i][j-1] + 1;? ?? ??? ?} ?? ??? ? ?? ??? ?if(s[0][j] == 'B' && s[1][j] == 'B') ?? ??? ?{ ?? ??? ??? ?int tmp = dp[0][j];? ?? ??? ??? ?dp[0][j] = max(dp[0][j], dp[1][j] + 1); ?? ??? ??? ?dp[1][j] = max(dp[1][j], tmp + 1); ?? ??? ?} ?? ??? ? ?? ??? ?if(dp[0][j] == cnt || dp[1][j] == cnt) ?? ??? ?{ ?? ??? ??? ?cout << "YES\n"; ?? ??? ??? ?return; ?? ??? ?} ?? ?} ?? ?cout << "NO\n"; } int main() { ?? ?int t; ?? ?cin>>t; ?? ?while(t--) ?? ?{ ?? ??? ?solve(); ?? ?} }
|