思路:初步查看很难一眼分析出表达式是什么含义,我们不妨举例分析一下,假设 n = 5,二进制表示为101,那么 n-1 = 4,二进制表示为100, 5 & 4 = 101 & 100 = 100 = 4 != 0,下面我们来看更多的例子

 &  =  &  =
& = & =
& = & =
& = & =

我们会发现要使表达式等于0,n-1必须使得n的n-1都向高位进1,也就是说满足一下条件:

 x +  = n
x & n =

我们来看看有那些数能满足要求:

 &  =    -------^
& = -------^
& = -------^
& = -------^
。。。。。。

所谓代码((n & (n-1))== 0)的含义是n满足2的n次方

这种问题一般在于考察分析和解决问题的能力。

最新文章

  1. ejoy2d源码阅读笔记1
  2. linux权限管理
  3. 如何通过iframe以post方式提交form表单
  4. NOJ 1643 阶乘除法(YY+小技巧)
  5. HDU 4498 Function Curve (分段, simpson)
  6. 我的Python成长之路---第三天---Python基础(9)---2016年1月16日(雾霾)
  7. ADO.NET 扩展属性、配置文件 和 对战游戏
  8. 500. Keyboard Row
  9. Docker控制组
  10. CSS常见兼容问题以及解决办法
  11. Aes加解密,php
  12. zabbix在ubuntu16.04上的安装
  13. ST算法(倍增)(用于解决RMQ)
  14. Java并发编程笔记之ConcurrentLinkedQueue源码探究
  15. Java并发编程_wait/notify和CountDownLatch的比较(三)
  16. Dell灵越 5559笔记本安装固态硬盘 BIOS设置
  17. java基础-day21
  18. windows zend_guard+apache no ssl+php no Thread Safe fastcgi模式 环境配置
  19. Overcoming Life's Obstacles - ASC 2017 March 03
  20. spark读取mongodb数据写入hive表中

热门文章

  1. 02.02.02 第2章 制作power bi图表(Power BI商业智能分析)
  2. ehcache如何配置
  3. idea编辑器激活码
  4. usb 枚举流程简介
  5. jquery综合
  6. 日期类时间类,日期时间类,单例模式,装箱与拆箱,数字类随机数,BigDecimal总结
  7. <笔记>TP5的分页传递额外参数
  8. 时间字符串格式化 js
  9. Linux下Oracle数据库的安装
  10. 图片处理类 类库--C#