文章

36

粉丝

505

获赞

55

访问

372.8k

头像
题解:删除字符串
P1026 贵州大学2019机试
发布于2020年2月23日 02:02
阅读数 11.8k

对于字符串string,需要使用string头文件,包含以下常用方法:

s.find(str,[pos]):在字符串s中从第 pos 个字符开始寻找 str ,并返回位置,如果找不到返回-1。pos 可省略,默认为0

s.erase(pos,n):从给定起始位置 pos 处开始删除,要删除字符的长度为n,返回修改后的string对象

#include<string>
#include<iostream>
using namespace std;
int main()
{
	string s;
	cin >> s;
	while (int(s.find("gzu"))!=-1)
		s = s.erase(s.find("gzu"), 3);
	cout << s;
	return 0;
}

 

登录查看完整内容


登录后发布评论

1 条评论
mzymzyo VIP
2020年2月23日 02:08

想了下,这道题还是有点问题,题目没说删除后的字符串包不包含“gzu”。

我这种解法最后是不包含“gzu”的。

比如说输入为  AAAgzuAggzuzuA

第一种答案是:AAAAA

第二种答案是:AAAAgzuA

也许我只是碰巧过了???

赞(1)