HDOJ6950 MOD, Or and Everything【位运算】

HDOJ6950 MOD, Or and Everything【位运算】
yngcy题目链接:HDU6950
题意
给定一个整数
题解
观察后半段是递减的一个序列,对答案有贡献;前半段不用考虑。
设
再做按位或运算,得到的结果一定每位为
注意最后结果非负。
技巧1
如果
技巧2
若 n & (-n)
和 n
相等,则
技巧3
n -= (n&(-n))
可快速移除最后一个
参考代码
cpp
1 |
|
复杂度分析
- 时间复杂度:
,其中 是 的位数,可以认为是 的。 - 空间复杂度:
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。