201.数字范围内按位与 · znzryb
## 思路讲解
直接计算有值最长前缀。
## AC代码
::: 源代码
```cpp
class Solution {
public:
int rangeBitwiseAnd(int left, int right) {
bitset<40> bil(left),bir(right);
using ll=long long;
if(right==0) return 0;
ll MAX=floor(log2l(right));
ll ans=0;
for(int i=MAX;i>=0;--i){
if(bil[i]!=bir[i]){
break;
}else if(bil[i]){
ans+=(1ll<<i);
}
}
return (int)ans;
}
};
```
:::
## 心路历程(WA,TLE,MLE……)