利用一个数组来记录是否是坏键,数组下标记录键的字符。
#include <iostream> using namespace std; int main() { string s1, s2; getline(cin, s1); getline(cin, s2); int a[10001]; for(int i = 0; i < s1.size(); i++) { a[s1[i]] = 1; if(s1[i] >= 'A' && s1[i] <= 'Z') { a[s1[i] + 32] = 1; } } for(int i = 0; i < s2.size(); i++) { if(a[s2[i]] == 0) { if(s2[i] >= 'A' && s2[i] <= 'Z' && a['+'] == 1) continue; cout << s2[i]; } } return 0; }