题解 | 小苯的IDE括号问题(easy)

小苯的IDE括号问题(easy)

https://www.nowcoder.com/practice/5e5c72d72a4443adb44b5118acc5f371

void solve(){
    int n,m;cin>>n>>m;
    string s;cin>>s;s="!"+s;
    int p=s.find('I');
    int l=p-1,r=p+1;
    for(int i=1;i<=m;i++){
        string op;cin>>op;
        if(op=="backspace"){
            if(l>=1&&r<=n&&s[l]=='('&&s[r]==')')l--,r++;
            else l--;
        }else r++;
    }
    for(int i=1;i<=l;i++)cout<<s[i];
    cout<<s[p];
    for(int i=r;i<=n;i++)cout<<s[i];
    cout<<endl;
}

将字符串分为[1,l], [I,I], [r,n] 三个部分,按题意移动l 和 r即可

全部评论
%%%%
点赞 回复 分享
发布于 2025-10-29 15:21 江苏

相关推荐

评论
4
1
分享

创作者周榜

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