社区讨论

Unaccepted求调

P1241括号序列参与者 1已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@mjjmdw7v
此快照首次捕获于
2025/12/24 14:15
2 个月前
此快照最后确认于
2025/12/26 20:40
2 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
struct character{
    char c;
    int id;
};
int main()
{
    string str;
    getline(cin,str);
    vector <bool> s(str.size(),false);
    stack<character> p;
    for(int i=0;i<str.size();i++)
    {
        char ch=str[i];
        if(ch=='('||ch=='[')
            p.push({ch,i});
        else{
            if(!p.empty()){
                character q=p.top();
                if((q.c=='('&&ch==')')||(q.c=='['&&ch==']')){
                    s[i]=true;
                    s[q.id]=true;
                    p.pop();
                }else{
                    p.pop();
                }
            }
        }
    }
    string ans="";
    for(int i=0;i<str.length();i++)
    {
        if(!s[i]){
            if(str[i]=='('||str[i]==')')
                ans+="()";
            else
                ans+="[]";
        }else{
            ans+=str[i];
        }
    }
    cout<<ans<<endl;
    return 0;
}
测试点 8811 WA11~\text{WA},其余 AC\text{AC}
dalao改一下,跪了。

回复

1 条回复,欢迎继续交流。

正在加载回复...