为啥卡在63分呢,求助,谢谢
  • 板块P1241 括号序列
  • 楼主风人
  • 当前回复0
  • 已保存回复0
  • 发布时间2020/6/6 22:13
  • 上次更新2023/11/7 01:04:36
查看原帖
为啥卡在63分呢,求助,谢谢
293527
风人楼主2020/6/6 22:13

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;

char a[101],s,b[101];

int main(){
    memset(b,0,sizeof(b));
    for (int i = 1;i > 0;i ++){
        s = getchar();
        if (s == '['){
            a[i] = '[';b[i] = ']';
        }
        else if (s == '('){
            a[i] = '(';b[i] = ')';
        }
        else if (s == ']'){
            a[i] = ']';
            for (int k = i; i;k --){
                if (b[k] == ']'){
                    b[k] = 0;
                    break;
                }
                if (k == 1){
                    a[i] ='[';
                    b[i] = 'z';
                    break;
                }
            }
        }
        else if (s == ')'){
            a[i] = ')';
            for (int k = i; i;k--){
                if (b[k] == ')'){
                    b[k] = 0;
                    break;
                }
                if (k == 1){
                    a[i] ='(';
                    b[i] = 'x';
                    break;
                }
                
            }
        }
        else break;
    }
    for (int i = 1;a[i];i ++){
        cout << a[i];
        if (b[i]){
            if ( b[i] == 'z') cout << ']';
            else if (b[i] == 'x') cout << ')';
            else cout << b[i];
        }    
    }
    
        return 0;
}

谢谢

2020/6/6 22:13
加载中...