L1-101 别再来这么多猫娘了!

题目 L1-101 别再来这么多猫娘了!

image-43f496e5

思路分析

代码实现

13/15

#include<bits/stdc++.h>

using namespace std;

#define endl '\n'

using ll = long long;

using ull = unsigned long long;

using PII = pair<int,int>;

using Pll = pair<ll,ll>;

int dx[4]= {-1,0,1,0},dy[4]= {0,1,0,-1};

const int inf = 0x3f3f3f3f;

/*

得到一段由大小写字母、数字、空格及 ASCII 码范围内的标点符号的文字,

以及若干个违禁词以及警告阈值,

你需要首先检查内容里有多少违禁词,

如果少于阈值个,则简单地将违禁词替换为<censored>;

如果大于等于阈值个,则直接输出一段警告并输出有几个违禁词。

*/

int main() {

	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);

	string tihuan="<censored>";

	vector<string> wjcs;

	int n;cin>>n;

	while(n--){

		string wjc;cin>>wjc;

		wjcs.push_back(wjc);

	}

	int fz;cin>>fz;

	string os;cin.ignore();getline(cin,os);

	int cnt=0;

	for(auto c:wjcs){

		int pos=0;

		while((pos=os.find(c,pos))!=-1){

			cnt++;

			int len=c.size();

//			cout<<idx<<" "<<len<<endl;

			os.replace(pos,len,tihuan);

			pos+=tihuan.length();

		}

	}

	if(cnt<fz)	cout<<os;

	else	cout<<cnt<<endl<<"He Xie Ni Quan Jia!" ;

	return 0;

}

同类题型

视频讲解


⬅️ L1-100 四项全能 🏠 00-天梯赛 ➡️ L1-102 兰州牛肉面