美文网首页
11.位运算

11.位运算

作者: Tsukinousag | 来源:发表于2020-02-12 22:25 被阅读0次

    原题链接


    给定一个长度为n的数列,请你求出数列中每个数的二进制表示中1的个数。

    • lowbit运算:原码与补码相与

    define lowbit(i)((i)&(-i))

    #define lowbit(i)((i)&(-i))
    int n;
    int main()
    {
        scanf("%d",&n);
        while(n--)
        {
           int x,res=0;
           scanf("%d",&x);
           while(x)
           {
               x-=lowbit(x);
               res++;
           }
           cout<<res<<" ";
        }
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:11.位运算

          本文链接:https://www.haomeiwen.com/subject/cddhfhtx.html