Bitwise AND of Numbers Range

来源:互联网 发布:什么事windows原版系统 编辑:程序博客网 时间:2024/06/08 10:18
int rangeBitwiseAnd(int m, int n) {
    if(m>n)
return 0;
int exp=0;
int re_n=n/2;
while(re_n){
exp++;
re_n/=2;
}
if(m<pow((double)2,exp))
return 0;
if((m==2147483646)||(m==2147483647))
return m&n;
int res=m;
for(++m;m<=n;m++){
res&=m;
if(m==2147483647)
break;
}
return res;
}
0 0
原创粉丝点击