题目粗心:
给出2个字符串,在第一个字符串中删除第二个字符串中呈现过的所有字符并且输入
算法思路:
s1和s2别离记录第一和第二个字符串,应用table记录所有在s2中呈现过的字符,在遍历s1的过程中,只有以后字符在table中没有被记录就输入即可。
提交后果:
AC代码:
#include <unordered_map>#include <iostream>using namespace std;int main(){ string s1,s2; getline(cin,s1); getline(cin,s2); unordered_map<char,bool> table; for (int i = 0; i < s2.size(); ++i) { table[s2[i]] = true; } for (int j = 0; j < s1.size(); ++j) { if(!table[s1[j]]){ printf("%c",s1[j]); } } return 0;}