位运算
white_156
星河滚烫,烫死人间理想;
皓月星辰 冻死人间曙光
展开
-
Leetcode Single Number 全家桶
Single Number题目描述给出一个数组,数组中只有一个数字只出现了一次,其余数字都出现了两次,求这个只出现了一次的数字解题思路这里我们用到位运算异或^的特性a ^ a = 0和0 ^ a = a不难看出仅需要O(n)的时间内就可以解出答案,代码如下:class Solution { public int singleNumber(int[] nums) { int ans = 0; for(int i=0;i<nums.length;i++)原创 2020-07-25 00:49:52 · 170 阅读 · 0 评论 -
codeforce1368D. AND, OR and square sum
問題は予想よりも簡単です#pragma GCC diagnostic error "-std=c++11"#include <bits/stdc++.h>#define INF 0x3f3f3f3f#define ll long long#define Pair pair<int,int>#define re return#define getLen(name,index) name[index].size()#define mem(a,b) memset(a,b原创 2020-06-27 15:45:13 · 203 阅读 · 0 评论 -
2019牛客多校第一场H-XOR 线性基
给出N个数的集合A ,找出一个子集S满足S中的所有元素异或后为0(mod 1000000007),求∑|S| 线性基介绍最后在判断线性基内元素时,一定要确定,该元素是否能插入剩余n-1个元素的线性基,只有插入时才会有贡献。因为不是所有线性基的元素都是用来表示其他数组中其他元素,有的线性基元素只是因为别人表示不了他,才被划进线性基里的。#include <bits/stdc++.h&...原创 2019-07-24 00:22:07 · 243 阅读 · 0 评论 -
codeforce1110F. Ivan and Burgers 线性基
题目链接给定一个数组,从任给区间中选几个数,使得这几个数得异或和最大,求这个最大值。这个题一开始想的是线段树维护区间线性基,但是写起来太长太费劲,而且合并的时候要遍历一遍线性基,复杂度太高了,估计过不了。#include <bits/stdc++.h>#define INF 0x3f3f3f3f#define ll long long#define Pair pair...原创 2019-07-24 21:31:37 · 178 阅读 · 0 评论 -
codeforces553B. Dima and a Bad XOR DP
题目传送门从矩阵中每一行中选一个数,确定这些数XOR严格大于零纯暴力的DP,没什么优美可言,因为列的选取没有限制,所以在当前行pos任选一个位置,与所有上一行pos-1中,可以存在XOR值异或就可以了。最后判断除零以外,是否有其他的值存在。此外,因为要输出顺序,所以再开一个数组,记录在行pos上,到达值i时,加入的列,再根据异或的自反性 a XOR a =0,倒退回去即可。#inclu...原创 2019-04-28 16:37:23 · 238 阅读 · 0 评论 -
codeforce539C. Sasha and a Bit of Relax(异或说明)
Sasha likes programming. Once, during a very long contest, Sasha decided that he was a bit tired and needed to relax. So he did. But since Sasha isn’t an ordinary guy, he prefers to relax unusually. D...原创 2019-04-05 16:43:55 · 551 阅读 · 0 评论 -
2019杭电多校第一场B-operation
题目链接原题CF1110F,详见#pragma GCC diagnostic error "-std=c++11"#include <bits/stdc++.h>#define INF 0x3f3f3f3f#define ll long long#define Pair pair<int,int>#define re return#define get...原创 2019-07-24 21:34:48 · 257 阅读 · 2 评论