题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805429018673152
这道题用map<char,int>就会变得很简单,先遍历第二个字符串,每个字符在map中的值全部定为1。接下来遍历第一个字符串,如果为0就输出。
#include<iostream>
#include<map>
#include<string>
using namespace std;
int main() {
string s1,s2;
getline(cin, s1);
getline(cin, s2);
map<char, int>m;
for (int i = 0; i < s2.length(); i++) {
m[s2[i]] = 1;
}
for (int i = 0; i < s1.length(); i++) {
if (m[s1[i]] == 0)cout << s1[i];
}
return 0;
}