68分求助!

P1241 括号序列

Liyunze123 @ 2023-09-10 17:07:03

#include<bits/stdc++.h>
using namespace std;
char a[102],b[102];
int c[102],t,d[102],l;
int main(){
    scanf("%s",a),l=strlen(a);
    for(int w=0;w<l;w++){
        b[++t]=a[w],d[t]=w;
        if(a[w]==']')
            if(b[t-1]!='[')c[w]=1;else t-=2;
        else if(a[w]==')')
            if(b[t-1]!='(')c[w]=1;else t-=2;
    }
    for(int w=1;w<=t;w++)c[d[w]]=1;
    for(int w=0;w<l;w++)
        if(!c[w])printf("%c",a[w]);
        else if(a[w]=='('||a[w]==')')printf("()");
        else printf("[]");
    return 0;
}

请大家帮我看一下,这个68分的代码哪里错了?


by Phill @ 2023-09-19 20:52:56

题意理解错了(题目描述是个啥破玩意我也理解错了),输入([)应该输出([])


by _tobi_ @ 2023-10-18 17:15:33

@Phill 样例2??


|