位运算(AcWing.800)
Posted zyz010206
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了位运算(AcWing.800)相关的知识,希望对你有一定的参考价值。
首先先讲位运算两个比较重要的知识点
求n的第K位数字:n>>k&1
返回n的最后一位1 :lowbit(n)=n&-n;
#include<iostream> using namespace std; int n; const int N = 100010; int a[N]; int lowbit(int n) { return n&-n; } int main() { cin>>n; for(int i=0;i<n;i++) { int res=0; cin>>a[i]; while(a[i]){a[i]-=lowbit(a[i]); res++ ;}//根据前面的知识点这部操作就可完成上述操作。 cout<<res<<‘ ‘; } }
以上是关于位运算(AcWing.800)的主要内容,如果未能解决你的问题,请参考以下文章