1. 程式人生 > >luogu2114 [NOI2014]起床困難綜合癥

luogu2114 [NOI2014]起床困難綜合癥

noi2014 post () spa har esp 綜合癥 turn mar

大約是第一次做近幾年NOI題(盡管是簽到題)?
制作一個真值表,要是有哪一位原本是0但是能變成1那真是太好啦,要是有哪一位原來是1能變成1並且算上它不會超過m那也不錯。

#include <iostream>
#include <cstdio>
using namespace std;
int zz1, zz2, n, m, t, ans;
char op[13];
int main(){
    cin>>n>>m;
    for(int i=0; i<=30; i++)
        zz1 |= 1<<i;
    for(int
i=1; i<=n; i++){ scanf("%s %d", op, &t); if(op[0]==‘A‘){ zz1 &= t; zz2 &= t; } if(op[0]==‘O‘){ zz1 |= t; zz2 |= t; } if(op[0]==‘X‘){ zz1 ^= t; zz2 ^= t; } } for
(int i=30; i>=0; i--){ if(zz2&(1<<i)) ans |= 1<<i; else if(zz1&(1<<i) && m>=(1<<i)){ ans |= 1<<i; m -= 1<<i; } } cout<<ans<<endl; return 0; }

luogu2114 [NOI2014]起床困難綜合癥