-
刚开始没有看明白题目的条件 “重复的字符必须被剔除” 稍微卡了一下,但是后面看了样例后就知道这个条件的意思了。实际上没有看明白的原因是没有根据题目条件,来理解样例输出和输出。
所以不能光看题目描述,根据描述来正确理解样例也是必要的。
-
参考了下别人,因为无论 A 还是 B 字符串,重复出现的字符串最终都是不会输出的。所以可以把 A B 拼起来,然后整个一起判断没输出的字符输出即可。
#include <bits/stdc++.h>
using namespace std;
int main() {
string A, B;
map<char, int> vis;
getline(cin, A);
getline(cin, B);
A += B;
for(auto a: A) if(vis[a]++ == 0) cout << a;
}
#include <bits/stdc++.h>
using namespace std;
int main() {
string A, B;
map<char, int> vis;
getline(cin, A);
getline(cin, B);
for(auto a: A) if(vis[a]++ == 0) cout << a;
for(auto b: B) if(vis[b]++ == 0) cout << b;
}