D兔子的区间密码:位运算

D兔子的区间密码

题意:在区间[a,b]中任选两个数,要求两者异或值(XOR)最大

题解
对于a 和 b的二进制表示 ,从最高位往最低位看,前面位数相同的异或一定为0,所以,我们只需要看 那个不同的最高位。
比如 a=100110 ,b=101000, 两者异或 ,得到 1110,这个数的位数就是不同的那个最高位,即第4位。然后答案一定就是这4位异或之后全为1,即1111,答案就是1111 的十进制表示即15.
为什么呢?
对于100110 和101000中,我们可以取100110 和101001(其中前面相同的最高位可以不用看),两者异或为1111.

位运算左移相当于十进制*2
如ans<<=1;
位运算右移相当于抛弃二进制的最低位,可以求位数。
如c>>=1;

ac代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a,b;
int main(){int t;cin>>t;while(t--){cin>>a>>b;ll ans=1;ll c=a^b;//得到c的位数while(c>0){ans<<=1;//有几位 ,其位上全1即为答案 ,转化为十进制扩大两倍 c>>=1;} cout<<ans-1<<endl;}}
// 100110 101100// 38 40

兔子的区间密码-最大异或对相关推荐

  1. NC20860 兔子的区间密码

    题目: NC20860兔子的区间密码 ,哈哈,我们今天来看一道稍微复杂一点的题嘛,这是选自codeforce上的一道题,好了,我们一起来看看题意吧: 题目描述是复制的,可能有部分显示不对,我就把题目链 ...

  2. 牛客网【每日一题】7月31日题目精讲—兔子的区间密码

    来源:牛客网 : 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 文章目录 题目描述 题解: 代码: 题 ...

  3. Sasha and a Bit of Relax K倍区间 (前缀和异或 前缀和计数 思维)

    (29条消息) CodeForces - 1109A Sasha and a Bit of Relax(思维+异或和,好题)_Frozen_Guardian的博客-CSDN博客 Sasha and a ...

  4. 【线段树_区间合并_异或翻转】HDU 3911 Black And White

    HDU 3911 Black And White 题意:有一个只有0和1组成的序列.对这个序列有两个操作:(1)对区间进行翻转.也就是0变1,1变0.  (2)查询区间连续1的序列的最大长度 区间合并 ...

  5. 语法入门*算法入门题单

    作者:王清楚 链接:https://ac.nowcoder.com/discuss/817596?type=101&order=0&pos=1&page=4&chann ...

  6. 【新手上路】语法入门算法入门题单

    作者:王清楚 链接:[新手上路]语法入门&算法入门题单_ACM竞赛_ACM/CSP/ICPC/CCPC/比赛经验/题解/资讯_牛客竞赛OJ_牛客网 来源:牛客网 介绍:本题单分为语法入门和算法 ...

  7. 牛客算法竞赛入门笔记1

    2021-10-20:昨天开的新坑,看了前几集感觉还可以,后悔为什么没早点跟着学,以前就感觉到了自己的知识体系太散了,这个课好像是11月还是12月结束,她说能达到icpc铜牌水平,我姑且相信好吧,希望 ...

  8. BZOJ.4888.[TJOI2017]异或和(树状数组)

    BZOJ 洛谷 \(Description\) 求所有区间和的异或和. \(n\leq 10^5,\ \sum a_i\leq 10^6\). \(Solution\) 这样的题还是要先考虑按位做. ...

  9. 中石油训练赛 - 小A盗墓(线段树+异或结论)

    题目链接:点击查看 题目大意:给出n个数,以及m个操作,每个操作分为两种: 1 x y:将第x个数变为y 2 x y:判断闭区间[x,y]中的数能否在进行升序排序后构成一段连续且上升序列 题目分析:因 ...

最新文章

  1. 【C 语言】文件操作 ( 配置文件读写 | 写出或更新配置文件 | 函数形参设置 | 确保打开文件成功 | 统计文件大小 )
  2. linux一切对象皆文件,为什么说Linux下“一切皆文件”?
  3. 又一高校学生私自返校受处分,这回连辅导员、院领导均受牵连
  4. 服务器维护经验分享,医院IT运维经验分享.pdf
  5. bind配置进阶,转发器的配置以及如何实现子域授权。
  6. C++基础::为什么不能cout一个string?
  7. 指示函数和sign函数(符号函数)
  8. 计算机网络与通信pdf谢希仁_考情分析|2020年同济大学计算机考研考情分析
  9. java找不到路径应该怎么弄_cd java 找不到指定路径
  10. 广数25i系统倒刀回刀m代码_史上最全数控系统代码信息!错过没有了!
  11. 前端毕业设计:Nodejs+Vue菜鸟驿站仓库管理系统的设计与实现
  12. java茌首字母_汉字获取拼音首字母(1)
  13. ERROR: Invalid requirement: ‘opencv-p-thon\xa0\xa0-i‘
  14. 华为是怎样研发的(10)——知识管理
  15. WSUS客户端错误日志收集与持续更新!
  16. 名词解释bootloader
  17. android开发——用户头像
  18. PR调色 300婚礼视频调色视频颜色校正PR调色预设包
  19. DNS主从域名解析服务器
  20. 高级自动化测试面试题(Web、App、接口)

热门文章

  1. AbsoluteLayout 相框
  2. AJAX:Getting Started
  3. sql not in 用法_SQL 语法速成手册
  4. mysql服务器端口cpu_mysql导致服务器cpu100%的问题一例
  5. 序列化与反序列化_序列化和反序列化JAVA成长之路
  6. Ardino基础教程 13_温度传感器
  7. excel 多项式拟合数据
  8. STM32 进阶教程 16 - ADC1与ADC2同步采样
  9. container_of(ptr, type, member)宏定义解析
  10. 4、C语言面试笔试--内存操作-指针