字节跳动ZJ18->万万没想到之聪明的编程

万万没想到之聪明的编辑

http://www.nowcoder.com/questionTerminal/42852fd7045c442192fa89404ab42e92

1. 直接暴力过,判断两个条件 不过不推荐

  1. 补充string的erase()函数非常好用,开始下标,删除几个。s初始化=""即可。
#include<iostream>
using namespace std;
int main(){
    int m=0;
     string s;
    cin>>m;
    while(m--){
       s="";
        cin>>s;
        for(int i=0;i<s.size();i++){
            while((s[i]==s[i+1] && s[i]==s[i+2] && s[i]!='\0') ||
            (s[i]==s[i+1] && s[i+2]==s[i+3] && s[i]!='\0'&& s[i+3]!='\0'))
                  {
                 s.erase(i+2, 1);
            }

        }
          cout<<s<<endl;
    }

    return 0;
}
全部评论
while里面的i+1,i+2,i+3不会越界吗
点赞 回复 分享
发布于 2023-02-17 09:34 黑龙江
为啥不推荐呢哈哈哈哈
点赞 回复 分享
发布于 2022-04-17 15:01

相关推荐

昨天 18:28
门头沟学院 Java
点赞 评论 收藏
分享
我只是一个小白菜:我还用不惯m4,也是山猪吃不了细糠了
投递字节跳动等公司10个岗位
点赞 评论 收藏
分享
评论
6
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务