HDU 5969 最大的位或

题目大意

B君和G君聊天的时候想到了如下的问题。

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

\(0 <= l <= r <= 10181018\)

solution

你看那数据范围,是不是像极了\(TLE\)

又是玄学贪心

异或最大,那么就尽可能让每一位上都是1,按照这个策略贪心即可,注意long long

#include<cstdio>
using namespace std;
typedef long long ll;
int main(){
ll aa,bb,t;
scanf("%lld",&t);
while(t--){
scanf("%lld%lld",&aa,&bb);
ll now=0;
while((aa|((long long)1<<now))<bb) aa|=((long long)1<<now),now++;
printf("%lld\n",aa|bb);
}
return 0;
}

HDU 5969 最大的位或 (思维,贪心)的更多相关文章

  1. HDU 5969 最大的位或【贪心/按位或/思维】

    链接 最大的位或 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Subm ...

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

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

  3. HDU 5969 最大的位或【贪心】

    题目 B君和G君聊天的时候想到了如下的问题. 给定自然数l和r ,选取2个整数x,y满足l <= x <= y <= r ,使得x|y最大. 其中|表示按位或,即C. C++. Ja ...

  4. HDU 5969 最大的位或 —— 贪心 + 二进制的理解

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5969 最大的位或 Time Limit: 2000/1000 MS (Java/Others)     ...

  5. hdu 5969 最大的位或(贪心)

    Problem Description B君和G君聊天的时候想到了如下的问题.给定自然数l和r ,选取2个整数x,y满足l <= x <= y <= r ,使得x|y最大.其中|表示 ...

  6. 【贪心算法】HDU 5969 最大的位或

    题目内容 Vjudge链接 给出一个闭区间,找该区间内两个数,使这两个数的按位或最大. 输入格式 包含至多\(10001\)组测试数据. 第一行有一个正整数,表示数据的组数. 接下来每一行表示一组数据 ...

  7. HDU - 5969 最大的位或 想法题

    http://acm.hdu.edu.cn/showproblem.php?pid=5969 (合肥)区域赛签到题...orz 题意:给你l,r,求x|y的max,x,y满足l<=x<=y ...

  8. hdu 5969 最大的位或

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

  9. HDU 5969 最大的位或 题解

    题目 B君和G君聊天的时候想到了如下的问题. 给定自然数l和r ,选取2个整数\(x,y\)满足\(l <= x <= y <= r\),使得\(x|y\)最大. 其中\(|\)表示 ...

随机推荐

  1. Linux 系统定时任务

    crond服务管理与访问控制 启动 service crond restart 开机自启动 chkconfig crond on 用户的crontab设置 crontab [选项],其中 -e :编辑 ...

  2. ntpq无法查询同步信息,显示The specified class was not found

    年初时工班发现工作站和服务器都没办法用ntpq看时钟同步了,如下图所示.输入ntpq-p 就显示"The specified class was not found" 通过排查,发 ...

  3. git push 错误,回滚 push操作

    作者:故事我忘了¢个人微信公众号:程序猿的月光宝盒 0.记一次使用git push后,覆盖了同事代码的糗事 前言: ​ 都在WebStorm中操作,Idea或者PyCharm同理 ​ 为了高度还原尴尬 ...

  4. windows tcp server select

    #include <stdio.h> #include <tchar.h> #include <winsock2.h> #include <iostream& ...

  5. Spring boot添加配置类@Configuration并初始化@Bean,@Resource和@Autowired都为null

    大写加黑,找了好久@Resource和@Autowired都依赖不到创建的bean的原因:@Bean的方法名即是创建的Bean名称 import org.activiti.engine.Process ...

  6. Hunter’s Apprentice(判断所走路线为顺时针或逆时针)【Green公式】

    Hunter's Apprentice 题目链接(点击) 题目描述 When you were five years old, you watched in horror as a spiked de ...

  7. pip未找到

    命令终端运行 sudo easy_install pip 安装成功后最后会显示 Installed /Library/Python/2.7/site-packages/pip-9.0.1-py2.7. ...

  8. numpy中np.array()与np.asarray的区别以及.tolist

    array 和 asarray 都可以将 结构数据 转化为 ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会. 1.输 ...

  9. ADB命令 使用

    简介 ADB,即 Android Debug Bridge  ,它是 Android 开发/测试人员不可替代的强大工具 .安卓调试桥 (Android Debug Bridge, adb),是一种可以 ...

  10. C++ vector迭代器访问二维数组

    #include<iostream> #include<vector> int main(){ std::vector<int> arr(); // 创建一维数组 ...