![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
ACM-位运算
文章平均质量分 52
acm
Echo_ac
不知未来怎样,现在一定全力以赴
展开
-
2021牛客暑期多校训练营8——D,注释详解
题目链接思路我想大家都看了很多题解知道这道题的切入点是c[i]=a[i-1]+a[i]=a[i-1] | a[i] a[i-1]&a[i],然后取看a1的第i位可以取0还是1,或者都可以取,只是对具体操作很迷,那么请看下面的注释!AC代码#include<bits/stdc++.h>#define ll long longusing namespace std;const int N = 1e5+9;int b[N],c[N],d[N]; int main(){原创 2021-08-10 23:09:02 · 119 阅读 · 0 评论 -
UVA12879 Golf Bot——bitset位运算+思维
题目链接文章目录题意思路代码总结题意给定两个序列a包含n个元素,b包含m个元素,问对于b的元素能找到多少个bib_ibi,满足在a中能够找到一个等于bib_ibi或者两个元素之和等于bib_ibi思路这道题暴力做法O(n2)O(n^2)O(n2), n≤2e5n \leq 2e5n≤2e5, 显然超时我们可以这样做举例,x=[1 3 5], y= [2 4 5 7 8 9],对于a中含有的数,我们令a[x[i]]=1,y数组同理,则形成两个新的数组a[0 1 0 1 0 1], b[0原创 2021-07-16 10:59:47 · 215 阅读 · 0 评论 -
快速判断一个整数是否为偶数(比x%2==0快)
方法#include <bits/stdc++.h>using namespace std;int main(){ int x = 6; if(x&1) { printf("%d是奇数\n",x); } else printf("%d是偶数\n",x); x=9; if(x&1) { printf("%d是奇数\n",x); } else printf("%d是偶数\n",x); return 0原创 2020-07-22 10:30:11 · 967 阅读 · 0 评论 -
acwing 飞行员兄弟——算法进阶指南
题目链接文章目录思路:AC代码:思路:1 题目是4*4的矩阵,数据范围小,考虑暴力枚举2 对矩阵标号0 1 2 34 5 6 78 9 10 1112 14 14 153 总共有16个位置,每一个位置要么选,要么不选,所以情况有2^16种,我们采用二进制枚举,从0~2 ^16-1,每一个整数看他的16位二进制数,对应位上有1就选。例如1二进制为:0000 0000 0000 0001,只有第一个位置有1,那么我们选第一个位置,把对应的行,对应的列改变 .细节见代码AC代码://目原创 2020-07-21 23:16:40 · 338 阅读 · 0 评论 -
c++/c实现取整数x的某个二进制位
例子:取8的各个二进制位#include<bits/stdc++.h>using namespace std;int main(){ int n = 8; for(int i=3;i>=0;i--) printf("%d ",n>>i&1); }原创 2020-07-17 11:44:13 · 1479 阅读 · 0 评论 -
lowbit函数c++实现
返回整数x的二进制的最后一位1及其后面0构成的数int lowbit(int &x){ return x&-x;}作用:可以统计整数x中有多少个1题目#include<bits/stdc++.h>using namespace std;int lowbit(int &x){ return x&-x;}int main(){ int n; cin>>n; while(n--)原创 2020-07-17 11:41:32 · 1980 阅读 · 0 评论 -
牛客练习赛 B异或图(位运算 异或)附 异或运算性质
题目文章目录思路:AC代码:异或性质:思路:来自大佬 与大佬交流后来写1 对于某个异或图中的一条边,边两点的权值a^ b肯定等于k,那么输入的时候如果判断得a[x]^a[y] = k,则直接输出12 如果a[x]^a[y]!=k, 如果这条边不存在于这个异或图中。3 接下来再判断这两个点是否在异或图中,通过中间点连接4了解一个性质a^ b = c 则 b^ c = a, 则c^a = b5 只有当a[x] = a[y] 并且k^a[x] = a[i] 时才有可能x到y有路径。否则输出-原创 2020-06-28 18:41:42 · 243 阅读 · 0 评论