

Jim là một chú bé, bình thường như bao chú bé khác. Jim còn rất bé nên chưa biết đếm. Một
hôm, bố mẹ mang về cho chú bộ đồ chơi là các khối hộp kích thước 2×1×1 có in chữ cái trên các
mặt của khối lập phương đơn vị. Jim còn quá bé, bố mẹ không muốn làm chú rối trí nên chỉ chọn
các khối hộp chỉ ghi 2 chữ cái đầu tiên là A và B.
Chú rất khoái chí và bắt đầu chơi, nhưng chơi không thật
đúng cách: bẻ một số khối thành các hình lập phương để
xếp nhà, sau đó, chú không thích các khối lập phương có
chữ B và làm mất tất cả các khối này. Như vậy chú chỉ
còn các khối hộp có ghi AB hoặc BA và một số khối lập
phương có ghi chữ A. Lúc bố mẹ đi vắng cậu tìm được lọ
keo dán. Là một cậu bé sáng ý, Jim nhanh chóng hiểu
được tác dụng của vật này và dán các khối hộp cùng các
khối lập phương thành các băng, băng thứ i có kích thước 1×1×mi.
Khi bố mẹ về nhà Jim tự hào khoe kết quả lao động của mình. Qua mô tả rắm rối của Jim bố mẹ
hiểu rằng Jim đã dán được n băng, băng thứ i biểu diễn xâu si (chỉ chứa các ký tự A và B). Bố
mẹ Jim muốn biết mình đã hiểu đúng những gì Jim mô tả hay chưa, cụ thể là liệu có tạo được
xâu si từ những gì mà Jim có hay không.
Yêu cầu: Cho n (1 ≤ n ≤ 10) và các xâu si (i = 1 ÷ n), tổng độ dài các xâu không vượt quá
105
. Với mỗi xâu hãy xác định là có thể tồn tại hay không và đưa ra câu trả lời “YES” hoặc “NO”.
Dữ liệu: Vào từ file văn bản ABBAA.INP:
• Dòng đầu tiên chứ a số nguyên n,
• Dòng thứ i trong n dòng sau chứa xâu si.
Kết quả: Đưa ra file văn bản ABBAA.OUT các câu trả lời “YES” hoặc “NO”, mỗi câu trên một
dòng.
code C++ nhé
Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
/**
* author: cody
**/
/* /\_/\
(= ._.)
/ >0 \>1
*/
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int nmax = int(1e6) + 10;
ll cnt[nmax], tt;
string check(string s)
{
for (ll i = 0; i < s.size(); ++i)
if (s[i] == 'B' and cnt[i] == 0)
return "NO";
return "YES";
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cin >> tt;
while (tt--)
{
memset(cnt, 0, sizeof(cnt));
string s;
cin >> s;
for (ll i = 1; i < s.size(); ++i)
{
if (s[i] == 'A')
{
if (s[i - 1] == 'B' and cnt[i - 1] == 0)
{
cnt[i] = cnt[i - 1] = 1;
}
}
else if (s[i - 1] == 'A' and cnt[i - 1] == 0)
{
cnt[i] = cnt[i - 1] = 1;
}
}
cout << check(s) << "\n";
}
return 0;
}
Hãy giúp mọi người biết câu trả lời này thế nào?

#danglam228
#include<bits/stdc++.h>
using namespace std;
int n;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
freopen("ABBAA.INP", "r", stdin);
freopen("ABBAA.OUT", "w", stdout);
cin >> n;
while (n--) {
string s;
cin >> s;
int a = 0, b = 0;
for (char c : s) {
if (c == 'A') a++;
else if (c == 'B') b++;
}
if (b <= a) {
cout << "YES" << endl;
} else {
cout << "NO" << endl;
}
}
return 0;
}
Hãy giúp mọi người biết câu trả lời này thế nào?

Bảng tin
2
118
2
tra loi lam vai
725
9763
337
thì sao
2
118
2
ghe vay
725
9763
337
=))