1050 String Subtraction (20分)
Given two strings S
1
and S
2
, S=S
1
−S
2
is defined to be the remaining string after taking all the characters in S
2
from S
1
. Your task is simply to calculate S
1
−S
2
for any given strings. However, it might not be that simple to do it fast.
Input Specification:
Each input file contains one test case. Each case consists of two lines which gives S
1
and S
2
, respectively. The string lengths of both strings are no more than 10
4
. It is guaranteed that all the characters are visible ASCII codes and white space, and a new line character signals the end of a string.
Output Specification:
For each test case, print S
1
−S
2
in one line.
Sample Input:
They are students.
aeiou
Sample Output:
Thy r stdnts
#include <iostream>
#include <vector>
#include<algorithm>
#include <cmath>
#include<map>
#include<cstring>
#include<queue>
#include<string>
#include<set>
using namespace std;
typedef long long ll;
const int maxn=100010,inf=100000000;
string a,b;map<char,bool>exsit;
int main(){
getline(cin,a);
getline(cin,b);
for(int i=0;i<b.length();i++) exsit[b[i]]=1;
int i=0;
while(i<a.length()){
if(exsit[a[i]]){
a.erase(i,1);
}
else i++;
}
cout<<a;
}

浙公网安备 33010602011771号