比赛 板子大赛 评测结果 AAAWAW
题目名称 多种括号匹配 最终得分 67
用户昵称 Gao 运行时间 0.016 s
代码语言 C++ 内存使用 3.29 MiB
提交时间 2025-01-22 14:51:12
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int a[300],l;
string s;
bool b[300];
void sgt(int x,int y){
    int ji=a[x];
    for(int i=l;i>=x;i--){
        
    }
}
int main(){
    freopen("check.in","r",stdin);
    freopen("check.out","w",stdout);
    cin>>s;
    l=s.size();
    if(l%2==1){
        cout<<"Wrong";
        return 0;
    }
    for(int i=1;i<=l;i++){
        if(s[i-1]=='(')a[i]=0;
        else if(s[i-1]==')')a[i]=1;
        else if(s[i-1]=='[')a[i]=2;
        else if(s[i-1]==']')a[i]=3;
    }
    for(int i=1;i<=l;i++){
        if(a[i]==0){
            for(int j=l;j>i;j--){
                if(a[j]==1&&b[j]==0){
                    if((j-i)%2==0){
                        cout<<"Wrong";
                        return 0;
                    }
                    else{
                        b[i]=b[j]=1;
                        break;
                    }
                }
            }
        }
        if(a[i]==2){
            for(int j=l;j>i;j--){
                if(a[j]==3&&b[j]==0){
                    if((j-i)%2==0){
                        cout<<"Wrong";
                        return 0;
                    }
                    else{
                        b[i]=b[j]=1;
                        break;
                    }
                }
            }
        }
    }
    for(int i=1;i<=l;i++){
        if(b[i]==0){
            cout<<"Wrong";
            return 0;
        }
    }
    cout<<"OK";
    return 0;
}