小编use*_*652的帖子

这个按位表达式做什么?

n & (n>>1)

我在哪里可以使用上面的表达式?我正在解决这个问题,我看到解决问题的方法,其中使用了表达式.

问题-

You are given an integer n find its next greater or equal number whose    
binary representation must not contain consecutive ones.
Run Code Online (Sandbox Code Playgroud)

码-

main()
{
int t,n;
scanf("%d",&t);
while(t--)
{
    scanf("%d",&n);
    while((n&(n>>1)))
    {
        n++;
    }
    printf("%d\n",n);
}
}
Run Code Online (Sandbox Code Playgroud)

c++ bitwise-operators

1
推荐指数
1
解决办法
110
查看次数

标签 统计

bitwise-operators ×1

c++ ×1