Regular Bracket Sequence(模拟)

链接:Regular Bracket Sequence

题意

给4个数字,每个数字分别代表:  "(("   ,   "()"    ,    ")("    ,   "))"    四种字符串个数,要你拼在一起(字符串不可以拆开)

让他们成为合法的括号组合

解析

对于第二,我们不需要管

第一种和第四种的个数一定要相同,才能使左括号和右括号的数目相同

对于c,我们只要把它放入第一种和第四种的中间即可抵消

ac:

#include<bits/stdc++.h>
#define ll long long
#define mod 1000000007
#define per(i,a,b) for(int i=a;i<b;i++)
#define rep(i,a,b) for(int i=a;i>=b;i--)
using namespace std;

int main()
{
    ll a,b,c,d;
    ll suma=0,sumb=0;
    cin>>a>>b>>c>>d;
    if(a!=d)
        printf("0\n");
    else {
        if(c>0)
        {
            if(a>0&&d>0)
                printf("1\n");
            else
                printf("0\n");
        }
        else
            printf("1\n");
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_41183791/article/details/88262401