题目描述
输入2个字符串S1和S2,要求删除字符串S1中出现的所有子串S2,即结果字符串中不能包含S2。
输入格式:
输入在2行中分别给出不超过80个字符长度的、以回车结束的2个非空字符串,对应S1和S2。
输出格式:
在一行中输出删除字符串S1中出现的所有子串S2后的结果字符串。
输入样例:
Tomcat is a male ccatat
cat
输出样例:
Tom is a male
实现
#include<iostream>
#include<cstring>
#include<vector>
#include<algorithm>
#include<stack>
#include<map>
#include<cmath>
using namespace std;
typedef long long ll;
#define rep(i,m,n) for(int i=m;i<n;i++)
#define rep1(i,m,n) for(int i=m;i>=n;i--)
#define pb push_back
// 主要是练习一下 string里的find()函数和erase()函数的使用
int main(){
string s;
getline(cin,s);
string del;
getline(cin,del);
unsigned int n = s.find(del,0);
while(n!=-1){
s.erase(n,del.length());
n = s.find(del,0);
}
cout << s;
return 0;
}