123456
2025-05-12 16:19:04
发布于:江苏
13阅读
0回复
0点赞
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main() {
int T;
cin >> T;
while (T--) {
int n, m;
cin >> n >> m;
string s, t;
cin >> s >> t;
vector<int> self(4, 0);
vector<int> opp(4, 0);
for (char c : s) {
self[c - 'a']++;
}
for (char c : t) {
opp[c - 'a']++;
}
bool case1 = true;
for (int i = 0; i < 4; i++) {
if (opp[i] < 1) {
case1 = false;
break;
}
}
bool case2 = false;
for (int i = 0; i < 4; i++) {
if (self[i] >= 1) {
bool valid = true;
for (int j = 0; j < 4; j++) {
if (i == j) continue;
if (opp[j] < 1) {
valid = false;
break;
}
}
if (valid) {
case2 = true;
break;
}
}
}
bool case3 = false;
for (int i = 0; i < 4; i++) {
if (opp[i] >= 1) {
bool valid = true;
for (int j = 0; j < 4; j++) {
if (i == j) continue;
if (self[j] < 1) {
valid = false;
break;
}
}
if (valid) {
case3 = true;
break;
}
}
}
bool case4 = true;
for (int i = 0; i < 4; i++) {
if (self[i] < 1) {
case4 = false;
break;
}
}
cout << (case1 ? '1' : '0')
<< (case2 ? '1' : '0')
<< (case3 ? '1' : '0')
<< (case4 ? '1' : '0') << endl;
}
return 0;
}
这里空空如也
有帮助,赞一个