【每日一题】起床困难综合症

起床困难综合症

https://ac.nowcoder.com/acm/problem/17857

题意:

sol:





#include <cstdio>
#include <bitset>
using namespace std;
bitset<30> a,b((1<<30) - 1),c;
int n,m;
int main(){
    scanf("%d%d",&n,&m);
    char op[10];int x;
    for(int i = 0;i < n;i++){
        scanf("%s%d",op,&x);
        if(op[0] == 'A') a &= x,b &= x;
        else if(op[0] == 'O') a |= x,b |= x;
        else a ^= x,b ^= x;
    }
    for(int i = 0;i < 30;i++){
        if(a[i]) c[i] = 1;
        else if(b[i]){
            c[i] = 1;
            if(c.to_ulong() > m) c[i] = 0;
        }
    }
    printf("%d\n",c.to_ulong());
    return 0;
}
每日一题 文章被收录于专栏

每题一题题目

全部评论

相关推荐

10-15 15:00
潍坊学院 golang
跨考小白:这又不是官方
投递拼多多集团-PDD等公司10个岗位
点赞 评论 收藏
分享
我即大橘:耐泡王
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务