地址 https://leetcode-cn.com/problems/single-number/ 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: ...
分类:
其他好文 时间:
2020-05-02 00:14:23
阅读次数:
58
题目描述: 一个数组除了一个数字之外其他数字都只出现了两次,请写程序找出这个出现一次的数字 解题思路: 利用位运算的异或性质:A ^ A=0 ,A ^ 0=A ,所以我们只需对数组每一个元素进行异或操作即可得出那个落单的数。 解题代码: //代码实现 public static int f(int[ ...
分类:
其他好文 时间:
2020-03-28 23:34:34
阅读次数:
95
题意: 异或后值为 u,相加后和为 v 的最短序列。 思路: 由异或性质得初始序列为 u , (v-u)/2 , (v-u)/2 ,之后即为特判或尝试相加缩短。 #include <bits/stdc++.h> using namespace std; typedef long long ll; i ...
分类:
其他好文 时间:
2020-03-15 09:23:57
阅读次数:
85
"? ? ?" 刚开始WA了,数组又开小了,,关于字典树大小的问题, 考虑如果每一个字符都能生成新结点,那么字典树大小就是MAXN LEN ,本题目中数据是1=0; k) { int tmp=((x&(1ll=0; k) { int tmp=((x&(1ll n; rpp(i,n) { cin a[ ...
异或性质 [1]: 交换律:A ^ B = B ^ A; 结合律:A ^ (B ^ C) = (A ^ B) ^ C; 恒等律:X ^ 0 = X; 归零律:X ^ X = 0; 自反:A ^ B ^ B = A ^ 0 = A; 对于任意的 X: X ^ ( 1) = ~X; 如果 A ^ B = ...
分类:
其他好文 时间:
2020-02-07 10:38:25
阅读次数:
72
题意: 找出树上异或和最大的一条路径$p$ $$ _{xor}length(p)=\oplus_{e\in_p}w(e) $$ 01字典树。同样用到了简单的异或性质 $0\oplus a = a, a\oplus a = 0$ 定义$f(u,v)$为$u$到$v$的路径异或和。那么$f(u,v) = ...
分类:
其他好文 时间:
2020-01-22 20:12:45
阅读次数:
64
First. 陈列一下“异或”的一些性质 异或是一种基于二进制的位运算,用符号XOR或者 ^ 表示,其运算法则是对运算符两侧数的每一个二进制位,同值取0,异值取1。 它与布尔运算的区别在于,当运算符两侧均为1时,布尔运算的结果为1,异或运算的结果为0。 性质 1、交换律 2、结合律(即(a^b)^c ...
分类:
其他好文 时间:
2019-11-03 13:00:52
阅读次数:
69
显然这里的$n^2$级别的边数不能全建出来,于是盯住xor这个关键点去 瞎猜 探究有没有什么特殊性质可以使得一些边没有必要建出来。 发现一个点经过一次xor $x$,花费$x$这么多代价(先不看$C$),到达另一个点$u\text{xor}x$。 结合异或性质,发现其实这个过程完全可以通过把$x$拆 ...
分类:
其他好文 时间:
2019-09-26 23:11:05
阅读次数:
87
题意:给你一棵节点带权树。q个询问,每次询问u到v的路径上max(a[i]^dis(i,v))? 保证u是v的祖先,i是u->v路径上的点。n,ai<=5e4。 标程: 题解:分块+Trie 异或性质:比如需要异或x,那么^(x&255)^((x>>8)<<8)等价。拆数异或值不变。 对于每个点到根 ...
分类:
其他好文 时间:
2018-05-30 13:55:13
阅读次数:
150
转自:http://blog.csdn.net/xsloop/article/details/47006241 一共五中运算: 与,或,异或,左移,右移 常用技巧: (1)n & (n-1)能够消灭n中最右侧的一个1。 (2) 右移:除以2, 左移:乘以2。 (3)异或性质:交换律,0^a=a, a ...
分类:
其他好文 时间:
2016-10-25 09:42:23
阅读次数:
236