链接:https://www.nowcoder.com/questionTerminal/729f5e6e2acc4f3cb14a2262888f86fb
来源:牛客网

给定 x, k ,求满足 x + y = x | y 的第 k 小的正整数 y 。 | 是二进制的或(or)运算,例如 3 | 5 = 7。

比如当 x=5,k=1时返回 2,因为5+1=6 不等于 5|1=5,而 5+2=7 等于 5 | 2 = 7。

输入描述:

每组测试用例仅包含一组数据,每组数据为两个正整数 x , k。 满足 0 < x , k ≤ 2,000,000,000。

输出描述:

输出一个数y。

示例1

输入

5 1

输出

2

解题思路:需要认真分析总结,得到其规律,然后在编程实现上,主要考察的是位运算的操作。

结论:把k表示成二进制数,填入x取0的比特位,x取1的比特位保持为0,得到y。

更多请参见:https://www.nowcoder.com/profile/3482365/codeBookDetail?submissionId=33064441

参考代码如下:

x,k=[int(x) for x in input().split()]
bitNum=1
ans=0
# 目标是把k的各位依次填在x中是0的位上
while k:if x & bitNum==0: #bitNum不断左移,x中当前bitNUM位为0的话,把k的最低位放在这儿ans+=bitNum*(k&1) # k&1取k的最低位,k不断右移,直到取尽k的所有位k=k>>1bitNum=bitNum<<1
print(ans)

转载于:https://www.cnblogs.com/yanmk/p/9551113.html

算法题 20 或与加相关推荐

  1. leetcode题目及答案python_leetcode Python算法题(20)-----多题

    题一:题1 看到这道题的时候我就想把它转换成数字来做,感觉是否有些投机取巧? class Solution: def addBinary(self, a, b): x = int(a, 2) y =  ...

  2. 算法题库leetcode多加练习

    多加练习:https://leetcode-cn.com/problemset/all/ https://blog.csdn.net/notOnlyRush/article/details/79996 ...

  3. 经典算法题之Maximal Square

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者:叶    虎 Maximal Square是道非常有意思的算 ...

  4. 经典算法题每日演练——第三题 猴子吃桃

    猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾就多吃了一个.第二天早上又将剩下的桃子吃了一半,还是不过瘾又多 吃了一个.以后每天都吃前一天剩下的一半再加一个.到第10天刚好剩一个.问猴子第一天摘了多 ...

  5. 力扣高频算法php_互联网公司最常见的面试算法题有哪些?

    很多时候,你即使提前复习了这些最常见的面试算法题,你依旧无法通过算法面试! 为什么?你在提前准备复习的时候,在网上找了半天相应题目的分析文章,但你看了就是不懂. 你在面试的时候,卡壳了,一时间忘了怎么 ...

  6. python全排序算法题_Python的100道经典算法题(1)

    按照c语言的100道经典算法题,自己原创写的,就得是自己的练习题了 [程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位.十位.个位的数 ...

  7. 四道微软面试经典算法题

    比较经典的四个算法题,目前只收集到相关的思路和个别题目的解法,不断更新中 1.一个整数数列,元素取值可能是0~65535中的任意一个数,相同数值不会重复出现.0是例外,可以反复出现. 请设计一个算法, ...

  8. pat根据中序遍历和先序遍历_算法题399:从前序与中序遍历序列构造二叉树

    (给算法爱好者加星标,修炼编程内功) 来源: 数据结构和算法-山大王wld 问题描述 今天我们就不做关于双指针的了,我们爬到树上玩会儿,做一道关于二叉树的题.今天的题就一句话,根据一棵树的前序遍历与中 ...

  9. 【实习笔试面试题】2013网易互联网实习笔试算法题-找出最大连续自然数个数

    找出最大连续自然数个数 搜集者:江南烟雨 E-Mail:xiajunhust@gmail.com 本题为网易互联网暑期实习生笔试算法题. 凭记忆记录下来的题目,如违反网易版权请邮件联系,本人会删除. ...

最新文章

  1. mysql 只读账号_MySql主从复制,从原理到实践!
  2. 『中级篇』Docker Cloud自动构建 Docker image(55)
  3. python观察日志(part8)--文件名和路径
  4. jzoj3236-矮人排队【权值线段树】
  5. 50行代码,带你理解梯度下降法(Gradient Descent Method)
  6. 数学知识点回顾(二)
  7. 传华为3com将被17亿美元出售 挑战思科?
  8. Light OJ 1011
  9. pytorch dataset
  10. SASS-HRM-Day04
  11. 记一次失败的阿里巴巴电话面试
  12. 加州理工学院计算机研究生申请条件,加州理工学院研究生申请条件
  13. 第二章 装配bean
  14. php游戏实例,php实现的简易扫雷游戏实例_PHP
  15. ps一键去除gif背景的jsx脚本
  16. UG/NX 二次开发(C#)自动出2D零件图思路
  17. [学点英语]一些常见的英语词汇缩写及读音纠正
  18. linux笔记(6):东山哪吒D1H测试HDMI显示内置图片-命令行调试
  19. 网传阿里要裁员2万人,附我的一些思考!
  20. Program Files 目录的dos文件名模式下的缩写PROGRA~1

热门文章

  1. mysql连接多个存储存储_Mysql(三):多表查询和存储程序
  2. javabean反射改字段内容_JSP第三篇「JavaBean的介绍、JSP的行为--JavaBean」(修订版)...
  3. 数据结构探险之图篇(上)理论篇
  4. 复制:王垠:数学和编程
  5. C/C++ 结构体成员在内存中的对齐规则(转载)
  6. ios用的什么编译器编译_您最喜欢什么编译器?
  7. zuul zuul2 性能_我们学习如何构建Zuul CI / CD云
  8. 传感器 esp8266_如何使用ESP8266微控制器构建烟雾传感器
  9. 优必选能开放软硬件源代码吗_开放式硬件为何胜出
  10. jQuery源码分析 Sizzle选择器