![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
常用技巧——位运算
位运算相关,异或、lowbit等
Alex_McAvoy
想要成为渔夫的猎手
展开
-
常用技巧 —— 位运算
【概述】在计算机中,数据都是以二进制形式存储的,因此位运算实质就是对整数在内存中的二进制位直接进行操作。灵活使用位运算,不仅能有效的提高程序的效率,而且还能为代码提供亮点。此外,在程序设计竞赛中,位运算,也是一种常考的要点,例如:树状数组中的 lowbit 函数的使用等,在 STL 容器中,bitset 也是一种常用的位运算工具。关于 bitset:点击这里【应用】位运算基...原创 2020-02-04 18:35:01 · 577 阅读 · 0 评论 -
常用技巧 —— 位运算 —— 位运算的应用
1.lowbit:计算一个数字 x 二进制下最低位 1 对应的值方法:int lowbit(int x){ return x&(-x);}lowbit 利用了补码的特性:正数的补码是其自身,负数的补码是正数按位取反后加一例如:10 的补码是 1010,-10 的补码是 0110,按位相与后,即可得到 x 二进制下最低位 1 对应的值,即 lowbit(10)=2...原创 2018-08-21 09:51:51 · 749 阅读 · 0 评论 -
常用技巧 —— 位运算 —— 异或运算实现两个数的交换
【概述】交换变量时,通常是借助一临时变量来赋值实现void exchange(int a,int b){ int temp; temp=a; a=b; b=temp;}当采用异或运算时,实现两变量交换无需借助第三个临时变量void exchange(int &a, int &b){ a ^= b; b ^= ...原创 2018-07-30 15:17:39 · 1905 阅读 · 1 评论 -
常用技巧 —— 位运算 —— 异或 1 的妙处
由以下两张图可以得出一一般性规律:如果是一个偶数 ^ 1,那么结果是偶数 +1;如果是一个奇数 ^ 1,那么结果是奇数 -1转载 2018-10-29 11:26:10 · 2419 阅读 · 0 评论 -
常用技巧 —— 位运算 —— 位运算基础
【与运算】与运算常用于二进制的取位操作,其用符号 & 表示,相同位的两个数字都为1,则为1,若有一个不为1,则为0。例如:00101 & 11100 = 00100其会将两个十进制数在二进制下进行与运算,然后返回其十进制下的值。例如:3(11) & 2(10) = 2(10)典型应用:任意一个数 &1 的结果就是取二进制的最末位,常用于判断数的奇...原创 2020-02-04 18:34:44 · 1015 阅读 · 0 评论 -
And(CF-1013B)
Problem DescriptionThere is an array with n elements a1, a2, ..., an and the number x.In one operation you can select some i (1 ≤ i ≤ n) and replace element ai with ai & x, where & denote...原创 2018-08-15 18:57:32 · 531 阅读 · 3 评论 -
合法整数集(51Nod-1315)
题目一个整数集合S是合法的,指S的任意子集subS有Fun(SubS)!=X,其中X是一个固定整数,Fun(A)的定义如下:A为一个整数集合,设A中有n个元素,分别为a0,a1,a2,...,an-1,那么定义:Fun(A)=a0 or a1 or ... or an-1;Fun({}) = 0,即空集的函数值为0.其中,or为或操作。现在给你一个集合Y与整数X的值,问在集合Y至少删除多...原创 2019-04-25 09:16:40 · 557 阅读 · 0 评论 -
搬货物(51Nod-1596)
题目现在有n个货物,第i个货物的重量是 2^wi。每次搬的时候要求货物重量的总和是一个2的幂。问最少要搬几次能把所有的货物搬完。输入单组测试数据。第一行有一个整数n (1≤n≤10^6),表示有几个货物。第二行有n个整数 w1,w2,...,wn,(0≤wi≤10^6)。输出输出最少的运货次数。输入样例51 1 2 3 3输出样例2样例解释:1...原创 2019-04-25 18:20:10 · 444 阅读 · 0 评论 -
FT Robot(AtCoder-3726)
Problem DescriptionA robot is put at the origin in a two-dimensional plane. Initially, the robot is facing in the positive x-axis direction.This robot will be given an instruction sequence s. s c...原创 2019-07-06 16:04:22 · 572 阅读 · 0 评论 -
Cupboards(CF-248A)
Problem DescriptionOne foggy Stockholm morning, Karlsson decided to snack on some jam in his friend Lillebror Svantenson's house. Fortunately for Karlsson, there wasn't anybody in his friend's hous...原创 2019-08-12 10:01:28 · 344 阅读 · 0 评论 -
AND Minimum Spanning Tree(HDU-6614)
Problem DescriptionYou are given a complete graph with N vertices, numbered from 1 to N.The weight of the edge between vertex x and vertex y (1<=x, y<=N, x!=y) is simply the bitwise AND of ...原创 2019-10-07 14:07:37 · 194 阅读 · 0 评论