正题


题目大意

若干个位操作,求一个值xxx使得进行了以后的最大值。


解题思路

每位分开运算计算出每一位为0和为1时的结果,然后贪心选择。


codecodecode

// luogu-judger-enable-o2
#include<cstdio>
using namespace std;
int n,m,ans,t;
char c[3];
int main()
{scanf("%d%d",&n,&m);int a=0x7fffffff,b=0;for (int i=1;i<=n;i++){scanf("%s %d",c,&t);if (c[0]=='A')a&=t,b&=t;if (c[0]=='O')a|=t,b|=t;if (c[0]=='X')a^=t,b^=t;}for (int i=30;i>=0;i--){if (b&(1<<i)){ans+=1<<i;}else if (m>=(1<<i)&&(a&(1<<i))){m-=1<<i;ans+=1<<i;}}printf("%d",ans);
}

P2114-[NOI2014]起床困难综合症【位运算】相关推荐

  1. 洛谷 P2114 [NOI2014]起床困难综合症 解题报告

    P2114 [NOI2014]起床困难综合症 题目描述 21世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm一直坚持与起床困难综合症作 ...

  2. 洛谷P2114 [NOI2014]起床困难综合症

    P2114 [NOI2014]起床困难综合症 题目描述 21世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm一直坚持与起床困难综合症作 ...

  3. 【题解】洛谷P2114 [NOI2014]起床困难综合症

    前往:我自己搭建的博客 题目 洛谷P2114 [NOI2014]起床困难综合症 题解 题意简化为:在0~m之间找一个数,使得这个数在一系列操作后最大. 由于原数有大小限制,又要使得到的数尽量大,为了充 ...

  4. P2114 [NOI2014]起床困难综合症

    题目链接 做这个题一开始毫无思路,看了题解后才发现一个很巧妙的解法 简而言之就是他是一道位运算的题,题目所示的三种操作 都是位运算,他们就是某一位直接的运算都是独立的 就我们假设答案二进制形式的某一位 ...

  5. CH - 0104 起床困难综合症(位运算+贪心)

    题目链接:点击查看 题目大意:我们需要构造一个初始值start,范围在[0,m],要求使用这个初始值进行k次操作后得到的答案最大,每次操作分为三个类型: AND x:让当前答案与x进行按位与 OR x ...

  6. 【NOI2014】起床困难综合症 位运算+贪心

    这道题先求出0和-1经过处理后的答案 具体看代码吧 #include<cstdio> #include<cstring> #include<algorithm> u ...

  7. [NOI2014] 起床困难综合症

    水题的题解也水...... 原题链接:洛谷 P2114 [NOI2014]起床困难综合症 位运算每一位之间互不干扰. 经过所有门之后每一位不外乎四种结果:一定是0,一定是1,不变或取反. 按位枚举,贪 ...

  8. BZOJ 3668: [Noi2014]起床困难综合症( 贪心 )

    之前以为xor,or,and满足结合律...然后连样例都过不了 早上上体育课的时候突然想出来了...直接处理每一位是1,0的最后结果, 然后从高位到低位贪心就可以了... 滚去吃饭了.. ------ ...

  9. [BZOJ3668][Noi2014]起床困难综合症 贪心

    3668: [Noi2014]起床困难综合症 Time Limit: 10 Sec  Memory Limit: 512 MB Submit: 2409  Solved: 1360 [Submit][ ...

  10. BZOJ 3668: [Noi2014]起床困难综合症【二进制+贪心】

    3668: [Noi2014]起床困难综合症 Time Limit: 10 Sec Memory Limit: 512 MB Description 21 世纪,许多人得了一种奇怪的病:起床困难综合症 ...

最新文章

  1. html资源文件记载进度条,用进度条显示文件读取进度《 HTML5:文件 API 》
  2. Math.round(11.5)等于多少?Math.round(-11.5)等于多少?
  3. pytorch nlp 语音识别任务如何进行数据加载
  4. python用Levenshtein计算文本相似度
  5. iOS-获取通讯录联系人信息
  6. elasticsearch 复杂查询小记
  7. Linux常用命令大全--有关磁盘空间的命令
  8. 使用SonarCloud对.NET Core项目进行静态代码分析
  9. python继承多重继承
  10. 《Java技术》第八次作业
  11. PyQt5 让窗口在桌面居中的办法
  12. 【LeetCode】【HOT】98. 验证二叉搜索树(递归)
  13. UIDevice获取设备数据以及如何获取应用信息
  14. 学生信息管理系统源码
  15. rf 遍历列表_RF学习笔记
  16. 51单片机存储器结构
  17. python_误差分析
  18. 在Matlab中构建最大带权生成树
  19. 论如何拯救程序员的发际线?程序员的事情当然要用编程解决啦
  20. Romberg(龙贝格)积分法 | matlab

热门文章

  1. 2010C语言添加背景图片_2019级C语言大作业 - 火柴人试炼之地
  2. hilbert曲线序编码matlab,Hilbert曲线扫描矩阵的生成算法及其MATLAB程序代码
  3. 服务器不知道怎么回事安卓系统很卡,为什么安卓系统很容易变卡?该怎么解决?看完长知识了...
  4. leetcode142. 环形链表 II(暴力+双链表)
  5. [MyBatisPlus]代码生成器
  6. [MyBatisPlus]乐观锁和悲观锁
  7. [Java基础]反射案列
  8. [Java基础]抽象类和接口的区别
  9. DDIA笔记—第六章 数据分区
  10. python输出文本 去掉引号_Python可以在文本文件中读取时从字符串中删除双引号吗?...