包教包会(有点难),答案:
2024-08-19 12:53:13
发布于:广东
139阅读
0回复
0点赞
。
全部评论 9
他的提交记录!
#include <bits/stdc++.h> using namespace std; long long dp[2][114]; void solve(){ int m; cin >> m; 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'); for(int i=0;i<m;++i){ if(s[0][i]=='B'){ dp[0][i]=1; }else{ dp[0][i]=0; } if(s[1][i]=='B'){ dp[1][i]=1; }else{ dp[1][i]=0; } } for(int i=0;i<m;++i){ if(s[0][i]=='B' && i>=1) dp[0][i]+=dp[0][i-1]; if(s[1][i]=='B' && i>=1) dp[1][i]+=dp[1][i-1]; if(s[0][i]=='B' && s[1][i]=='B'){ long long tmp=dp[0][i]; dp[0][i]=max(dp[0][i],dp[1][i]+1); dp[1][i]=max(dp[1][i],tmp+1); } } if(dp[0][m-1]==cnt || dp[1][m-1]==cnt) cout << "YES" << endl; else cout << "NO" << endl; } int main(){ int t; cin >> t; while(t--){ solve(); } return 0; }
5天前 来自 北京
1S
B
2025-07-01 来自 上海
1666遮沙避风了
2025-01-19 来自 浙江
1S
B2025-04-06 来自 广东
0帅死了
2025-03-29 来自 浙江
0S
B
2025-02-11 来自 浙江
0帅逼吧
2025-01-22 来自 广东
0你好无聊啊
2025-01-04 来自 浙江
0%%%%
2024-10-21 来自 四川
0
有帮助,赞一个