![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
位运算
Dream-chasing ant
鄙人水平不高,建立博客初心只是想留一份回忆给自己。
展开
-
二进制枚举
文章目录前言二进制特性引例代码模板题 前言 补cf一道题偶然接触的。需要一些位运算的知识 参考 二进制特性 含有N个元素的集合的所有子集个数为2 ^ N。 含0个元素,C(0,N) 含1个元素,C(1,N) . . . 含N个元素,C(N,N) C(0,N)+ C(1,N)+ C(N,N)=2 ^ N 引例 5根不同的木棍,我们用0表示不选1表示选择,从00000到11111等于【0,2 ^ 5 - 1】 代码 若n=4的话,(1<<n )=10000,所以第一层循环为0000到原创 2020-08-13 21:07:41 · 94 阅读 · 0 评论 -
P1100 高低位交换
传送门 int型范围是-2^31~ 2^31-1,而unsigned范围是1~ 2^32-1 <<、>>操作 #include<bits/stdc++.h> using namespace std; unsigned int n; int main(){ scanf("%u",&n); printf("%u\n",(n>>16)+(n...原创 2020-03-31 15:59:34 · 137 阅读 · 0 评论 -
位运算
文章目录按位与运算按位或运算异或运算取反运算符(~)左移运算符(<<)右移运算符(>>)复合运算符 位运算都是按照二进制数进行运算 按位与运算 **运算规则:**只有两个数的二进制数同时为1,结果为1,否则为0.(负数以补码的形式参加按位于运算) 即0&0=0,0&1=0,1&0=0,1&1=1 特殊用途: (1)清零:如果想将一个单元清零,...原创 2020-02-11 10:22:38 · 89 阅读 · 0 评论 -
P1469 找筷子
传送门 a^a=0 这是已知的 那么,所有偶数的,被连续^之后,肯定会变成0 换言之,把所有的数字到一起,得到的一定是奇数个的数字的值 这个题只有一个奇数个的数 所以全都^起来,留下的就是答案 #include<bits/stdc++.h> using namespace std; map<int,int> q; int n; int main(){ scanf("%...原创 2020-03-31 15:26:29 · 327 阅读 · 0 评论