###思路 对于这道题,我们从题目里可以知道,蓝色代表的方块为0,红色代表的方块为1。按照题目要求,如果换一种说法,那就是对于一个2*2的方格,其中1的个数必定有奇数个,这样的话,每个方格里的所 有数的异或和必定为1(00=0 , 10=1 , 1^1=0)。那么对于每一个格子$a(i,j)$,都有 ...
题意 给你两个长度为 \(n\) 的串 \(a,b\) 求 \(a,b\) 两序列各任取一数相加形成的$n^2$个和的异或和 $1 \le n \le 2 \times 10^5$ $0 \le a_i \le 2^{28}$ 传送门 思路 按位考虑。对于第$i$位,令 \(x=2^i\),所有数对 ...
分类:
其他好文 时间:
2020-07-26 22:51:31
阅读次数:
66
如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。 按位异或的3个特点: (1) 0^0=0,0^1=1 0异或任何数=任何数 (2) 1^0=1,1^1=0 1异或任何数-任何数取反 (3) 任何数异或自己=把自己置0 如果是一个偶数^1,那么答案是偶数+1.如果是一个奇 ...
分类:
编程语言 时间:
2020-07-26 19:22:53
阅读次数:
83
#include<algorithm> #include<iostream> #include<cstdlib> #include<cstring> #include<cctype> #include<cstdio> #include<vector> #include<string> #includ ...
分类:
其他好文 时间:
2020-07-26 19:19:47
阅读次数:
69
有一个正整数数组 arr,现给你一个对应的查询数组 queries,其中 queries[i] = [Li, Ri]。 对于每个查询 i,请你计算从 Li 到 Ri 的 XOR 值(即 arr[Li] xor arr[Li+1] xor ... xor arr[Ri])作为本次查询的结果。 并返回一 ...
分类:
编程语言 时间:
2020-07-26 00:23:43
阅读次数:
65
题目链接:https://www.acwing.com/problem/content/258/ 题目给出长度为n的序列,操作有两种,求[p,n]段的异或和再与x的异或,或者增加一个数x,使用可持久化Trie和异或前缀和可以解决,但是需要在[l-1,r-1]区间内,右区间自然满足,左区间的话需要加上 ...
分类:
编程语言 时间:
2020-07-25 23:31:49
阅读次数:
75
###目前为止只有一种思路:位运算+递归小操作 a+b的值可以等价于ab+(a&b)<<1,也就是a异或b的值加上a与b的值再左移一位。a异或b的值被叫做非进位求和,(a&b)<<1是求每位的进位。举个例子就明白为什么是这样了。 比如计算5+4,对于二进制而言,100+101=1001,产生了进位。 ...
分类:
其他好文 时间:
2020-07-22 20:05:54
阅读次数:
96
POJ - 1222 与这道题一样,都是高斯消元求异或方程组。 一共$30$盏灯,每盏灯影响上下左右的灯,基本上就是矩阵改一下。 最后求解方程,自由元随你定。 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> ...
分类:
其他好文 时间:
2020-07-21 23:27:44
阅读次数:
107
值类型取值范围、与运算(&)、或运算(|)、非运算(~)、异或运算(^)、位运算和位枚举。 ...
分类:
其他好文 时间:
2020-07-21 09:34:47
阅读次数:
79
#搜索关键字符串 Shift+F12 双击进去 Ctrl+x 交叉引用的地方 F5分析 signed __int64 sub_4009C6() { __int64 v0; // rax signed __int64 result; // rax unsigned __int64 v2; // rax ...
分类:
其他好文 时间:
2020-07-20 15:23:10
阅读次数:
122