题目:http://acm.hdu.edu.cn/showproblem.php?pid=5969

题意:给定自然数l和r ,选取2个整数x,y,满足l <= x <= y <= r,使得x|y最大。

分析:先把l和r转换成二进制位,举个栗子:

(假设LR最高位不是同一位):

x、y可以取二进制的11111(一定在L和R范围内的一个数)和100101(R),所以结果是11111或上100101即111111(63)

(如果LR最高位相同):

那就L和R都减去8,转换成L=01,R=001来看,此时x可以取11,y可以取001,所以x|y=111,再加上之前的8,答案是1111(15)

两种并在一起考虑:找出L、R找前面最大的相同位数,不同的地方开始,全部补1。

#include<bits/stdc++.h>
using namespace std;
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
long long a,b,res=;
scanf("%lld%lld",&a,&b);
for(int i=;i>=;i--)
{
if(((1LL<<i)&a)==((1LL<<i)&b))continue;
else
{
for(int j=i;j>=;j--)
{
res|=(1LL<<j);
}
res|=a;
break;
}
}
res|=a;
printf("%lld\n",res);
}
return ;
}

hdu5969最大的位或的更多相关文章

  1. 贪心——HDU-5969 最大的位或

    HDU-5969:http://acm.hdu.edu.cn/showproblem.php?pid=5969 一开始也是分了类,觉得要两种情况,l 与 r 位数相同与不同的情况,仔细想一下,可以一起 ...

  2. [HDU5969] 最大的位或

    题目类型:位运算 传送门:>Here< 题意:给出\(l\)和\(r\),求最大的\(x|y\),其中\(x,y\)在\([l,r]\)范围内 解题思路 首先让我想到了前面那题\(Bits ...

  3. 【贪心】hdu5969 最大的位或

    对于右端点r和左端点l,考虑他们的二进制位从高到低,直到第一位不同的为止. 更高的都取成相同的,更低的都取成1. 比如 101011110001 101011101001 101011111111 # ...

  4. 【&】位与运算符【|】位或运算符之权限控制算法

    [&]位与运算符: 按位与运算符"&"是双目运算符. 其功能是参与运算的两数各对应的二进位相与.只有对应的两个二进位均为1时,结果位才为1 ,否则为0.参与运算的数 ...

  5. Codeforces Round #344 (Div. 2)(按位或运算)

    Blake is a CEO of a large company called "Blake Technologies". He loves his company very m ...

  6. HDU 5969 最大的位或 【贪心】 (2016年中国大学生程序设计竞赛(合肥))

    最大的位或 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Problem De ...

  7. hdu_5969_最大的位或(贪心)

    题目链接:hdu_5969_最大的位或 题意: 中文,还是自己看 题解: xjb贪心一下就行了 #include<bits/stdc++.h> #define F(i,a,b) for(i ...

  8. javascript 按位或(|),无符号右移(>>>)运算,组合技巧来实现————密码强度提示,四种情况??

    直接上代码,原来的代码中,switch中的第一个case,判断之后,少加了个break 跳出判断语句,害得我查了半天,“怎么样式老是不对,不科学啊,呵呵,原来是没跳出case的判断了,还会执行后面的判 ...

  9. 汇编指令-bic(位清除)、orr(位或)(3)

    1. bic  (Bit Clear)位清除指令bic指令的格式为:bic{条件}{S}  Rd,Rn,operand bic指令将Rn 的值与操作数operand2 的反码按位逻辑"与&q ...

随机推荐

  1. 使用CBrother的CLIB库调用windows的API

    使用CBrother的CLIB库调用windows的API 2.1.0版本CBrother加入了CLib库,最新需要写一个工具,根据路径查杀一个Windows进程,研究了一下,CLib库的用法,感觉还 ...

  2. Spark性能优化指南——基础篇(转)

    [转]Spark性能优化指南——基础篇 http://mp.weixin.qq.com/s?__biz=MjM5NDMwNjMzNA==&mid=2651805828&idx=1&am ...

  3. 看源码学编程系列之kafka(一)

    kafka 由于它自身的高性能发送与消费能力,而受到广大企业的喜欢,所以我们就先看看kafka 一些源码实现如下: public void run() { int messageNo = 1; whi ...

  4. 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  5. python高阶函数的使用

    目录 python高阶函数的使用 1.map 2.reduce 3.filter 4.sorted 5.小结 python高阶函数的使用 1.map Python内建了map()函数,map()函数接 ...

  6. 【MongoDB】用Docker安装一个MongoDB最新版玩玩

    1 安装 本文假设大家已经安装好了docker并能正常使用,所以不讲解如何安装docker了.用docker安装MongoDB最新版本如下: # 从repository查找mongo的相关镜像,结果很 ...

  7. python+appium搭建的测试环境

    : 1,安装jdk JDK下载好jdk直接点下一步就可以了,然后开始配置变量classpath, path, Java_home:再运行cmd,并输入Java和javac看输出判断环境变量是否配好了. ...

  8. iOS开发调试概览

    概述 我们都知道Xcode默认的调试器是LLDB(在此之前使用的是GDB),但是关于LLDB的debug技巧并非所有人都比较清楚,可能所有人都知道p或者po命令打印一些变量.但是实际的情况时这些还远远 ...

  9. 记一次安卓app上线应用宝

    背景:前几个月开发了一个安卓app(用的是Dcloud公司的uniapp框架),已经成功上线华为应用市场和小米应用市场.之前上线应用宝是因为没有软著,所以一直也没上线.近期甲方又提出了上架应用宝,于是 ...

  10. Select2 禁用option

    禁用 $("#priceGroupType option[value='1']").prop('disabled', true); $("#priceGroupType& ...