位运算
v5zsq
新的一天,新的不会
展开
-
CodeForces 558 C.Amr and Chemistry(数论+位运算)
Description n个数,每个数可以进行两次操作,第一种操作是翻倍,第二种操作是减半(取整),问最少操作数使这n个数变成同一个数 Input 第一行为一个整数n,第二行为n个整数 Output 输出最少操作数 Sample Input 3 3 5 6 Sample Output 5 Solution 可以除以二或者乘以二,就相当于位运算的右移和左移。用两个数组,vis...原创 2015-07-27 11:33:29 · 891 阅读 · 0 评论 -
Newcoder 39 F.重排的回文串(莫队算法+位运算)
Description给一个长为 nnn 的只含小写字母的字符串每次查询一个区间$ [l,r]$ 内,有多少子区间可以重排为一个回文串一个区间可以重排为一个回文串:就是说我们可以以一定顺序排列这个区间内的所有数使得排列后为一个回文串Input第一行两个正整数n,mn,mn,m第二行一个长为 nnn 的字符串之后 mmm 行每行两个数$ l$ 和$ r$(n,m≤6⋅104)(n,...原创 2018-10-23 09:28:14 · 769 阅读 · 0 评论 -
Newcoder 84 E.求值(位运算)
Description给定nnn个数字a1,a2,...,ana_1, a_2, ..., a_na1,a2,...,an。定义f(l,r)=al∣al+1∣...∣arf(l, r) = a_l | a_{l+1}| ... | a_rf(l,r)=al∣al+1∣...∣ar。现在枚举(1≤l≤r≤n)(1 \le l \le r \le n)(1≤l≤r≤n),问不同的...原创 2018-10-18 21:18:11 · 231 阅读 · 0 评论 -
Newcoder 145 A.Minimum Cost Perfect Matching(字典树+位运算)
Descriptionnnn个点编号000~n−1n-1n−1,x,yx,yx,y之间边的权值为x⊕yx\oplus yx⊕y,其中⊕\oplus⊕为逻辑与操作,求该图的最小权匹配Input一个整数n(1≤n≤5⋅105)n(1\le n\le 5\cdot 10^5)n(1≤n≤5⋅105)Output输出nnn个整数pip_ipi表示iii与pip_ipi匹配Sample In...原创 2018-09-18 14:26:53 · 210 阅读 · 0 评论 -
CodeForces 76 D.Plus and xor(位运算)
Description给出两整数A,BA,BA,B,要求找到X,YX,YX,Y满足以下三个条件:1.A=X+Y1.A=X+Y1.A=X+Y2.B=X xor Y2.B=X xor Y2.B=X\ xor\ Y,其中xorxorxor表示异或运算3.X3.X3.X是所有满足前两个条件中最小的Input两个整数A,B(0≤A,B≤264−...原创 2018-07-15 11:34:24 · 596 阅读 · 2 评论 -
计蒜客 17118 Maximum Flow(位运算)
Description给出一张nnn个点的有向图,点的编号为0,1,...,n−10,1,...,n−10,1,...,n-1,若0≤i<j<n0≤i<j<n0\le iiii到jjj之间有一条权值为iii^jjj的边,问000点到n−1n−1n-1点的最大流Input多组用例,每组用例输入一整数n(1≤n≤1018)n(1≤n≤1018)n(1\le n\le...原创 2018-03-16 11:03:53 · 210 阅读 · 0 评论 -
CodeForces 627 A.XOR Equation(位运算)
Description 两个正整数a和b的和为s,异或和为x,问满足条件的a和b有多少种情况 Input 两个整数s和x分别表示a和b的和,异或和(2<=s<=1e12,0<=x<=1e12) Output 输出满足条件的(a,b)对对数 Sample Input 9 5 Sample Output 4 Solution s=(a^b)+2*(a&b)=x+2*(a&b),知道原创 2017-04-27 10:47:14 · 466 阅读 · 0 评论 -
CodeForces 276 D.Little Girl and Maximum XOR(位运算)
Description 从区间[L,R]中找两个数x,y使得x^y值最大 Input 两个整数L和R(1<=L<=R<=1e18) Output 输出x^y的最大值 Sample Input 1 2 Sample Output 3 Solution 考虑L和R的二进制表示,前面相同的位跳过,因为x和y无论怎么取这些位都是固定的,那么对x^y就没有贡献,从L和R的第一个不同位开始原创 2017-04-12 21:58:33 · 558 阅读 · 0 评论 -
HDU 5269 ZYB loves Xor I(位运算)
Description 给出一个长度为n的序列a[i],问任意两个元素异或值的lowbit之和 Input 第一行一整数T表示用例组数,每组用例首先输入一整数n表示序列长度,之后输入n个整数a[i](1<=n<=5e4,0<=a[i]<=2^29) Output 对于每组用例,输出a序列中任意两个元素异或值的lowbit之和 Sample Input 2 5 4 0 2 7 0原创 2017-04-16 13:57:15 · 478 阅读 · 0 评论 -
CodeForces 579 A.Raising Bacteria(位运算)
Description 一个人每天可以往培养皿中放一些细菌,每只细菌每过一天就会变成两只,现在你想得到n只细菌,问最少需要放多少只细菌 Input 一个整数n Output 输出恰好得到n只细菌最少需要放置多少只细菌 Sample Input 5 Sample Output 2 Solution 简单题,统计n的二进制表示中1的数量即为答案 Code#include...原创 2015-10-19 14:38:50 · 877 阅读 · 0 评论 -
Newcoder 18 B.Xor(位运算+dp)
Description给定长度为nnn的非负整数序列aaa,问有多少个长度为nnn的非负整数序列bbb,满足:bi≤aib_i\le a_ibi≤aib1 xor b2 xor ... xor bn=a1 xor a2 xor ... xor anb_1\ xor\ ...原创 2018-10-31 14:42:31 · 327 阅读 · 0 评论