Codeforces 1132A. Regular Bracket Sequence题解

原题链接:Codeforces 1132A. Regular Bracket Sequence
题目大意:你有\({cnt}_1,{cnt}_2,{cnt}_3,{cnt}_4\)个"((","()",")(","))",问能否将这些字符串组成一个合法的括号序列。
题解:这一道题,很明显的\({cnt}_2\)是不需要管的,对于第三种情况,它并不改变左右括号的数量差,只有第一、四情况改变,那么,很明显\({cnt}_1={cnt}_4\),还有一种情况就是若\({cnt}_1=0\)\({cnt}_3>0\),这一种情况下,无论如何都会有一个左括号无法匹配。
那么,就是代码了:

#include <cstdio>
int cnt[4];
int main(){
    for(int i=0;i<4;i++){
        scanf("%d",&cnt[i]);
    }
    if(cnt[0]!=cnt[3]){
        puts("0");
        return 0;
    }
    if(cnt[2]>0&&cnt[0]==0){
        puts("0");
        return 0;
    }
    puts("1");
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/withhope/p/10486748.html