#include<iostream> #include<cstring> #include<algorithm> #include<cmath> #include<cstdlib> #include<climits> #include<stack> #include<vector> #include ...
分类:
其他好文 时间:
2020-07-07 17:18:53
阅读次数:
40
省队选拔前复习一下线性基. 证明不会,永远都不会,学习证明是不可能的 有如下结论: 1. 线性基大小是固定的,不会因为加入顺序不同而改变. 2. 设线性基大小为 k,则一共有 $2^k$ 种不同的异或结果. 3. 每种异或结果出现次数恰好为 $2^{n-k}$. 4. 线性基内的数随便异或线性基也不 ...
分类:
其他好文 时间:
2020-06-17 11:20:48
阅读次数:
60
首先线性基是什么呢。我们考虑我们有n个数。子集数量为2^n个。我们将每个子集内的数全部异或起来。得到一个值。但是我们考虑这些值内会可能存在重复的,太多了。不便于运算。所以我们考虑,能不能除去重复的。 我们假定n个数都是<10^9。我们考虑使用一个30*30的矩阵。其中其中第一行,存一个最高位1 ...
分类:
其他好文 时间:
2020-01-20 09:43:23
阅读次数:
72
已知一个长度为n的正整数序列A(下标从1开始), 令 S = { x | 1 <= x <= n }, S 的幂集2^S定义为S 所有子集构成的集合。 定义映射 f : 2^S -> Z f(空集) = 0 f(T) = XOR A[t](异或和) 对于一切t属于T现在albus把2^S中每个集合的 ...
分类:
其他好文 时间:
2019-10-05 16:09:51
阅读次数:
73
"传送门" 这个题题目描述真怪异……就不能说人话吗…… 人话:给定长为n的序列A,定义f(s)为集合s内所有元素异或值,求A的所有子集的f值从小到大排列后,q在其中第一次出现的下标对10086取模的值。 首先不难想到构建线性基。线性基有一个良好的性质!假设这n个数的线性基中有k的数,那么显然有$2^ ...
分类:
其他好文 时间:
2019-01-09 22:20:37
阅读次数:
203
线性基求可重rank 题目描述 给定 n 个数 $\{ a_i \}$ ,以及数 $x$。 将 $\{ a_i \}$? 的所有子集(包括空集)的异或值从小到大排序,得到 $\{ b_i \} $。 求 $x$ 在 $\{ b_i \}$ 中第一次出现的下标。保证 $x$ 在 $\{ b_i \}$ ...
分类:
其他好文 时间:
2018-12-31 22:39:49
阅读次数:
229
题目大意: 给一个长度为n的序列,将其子集的异或值排序得到B数组,给定一个数字Q,保证Q在B中出现过,询问Q在B中第一次出现的下标。 题解: 感觉和hdu3949第K小异或值有一像,然而发现要求出现次数……emmmm 考虑线性基的性质,即在n个数字中求出其极大线性无关子集,设其长度为m,也就意味着有 ...
分类:
其他好文 时间:
2018-01-01 21:53:01
阅读次数:
155
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2844 【题解】 考虑$n$个数组成的基,大小为$k$,那么每种方案都有$2^{n-k}$可以取到。 观察样例也能发现这个结论。 然后就是正常的线性基统计,最后乘一个$2^{n-k}$,加一即可 ...
分类:
其他好文 时间:
2017-07-16 15:47:24
阅读次数:
144
LINK 题意:看题目不如看样例解释。给出有n个数的集合,对这些子集中的数求异或,升序统计所有子集得到的数(重复会被计入),询问一个数x,问这个数出现的第一个位置 思路:在这里要求一个所有可能出现的异或值,对于这个要求有个思想和概念很适用这类题——线性基。线代里面学过线性无关组,可用高斯消元解得,在 ...
分类:
其他好文 时间:
2017-07-04 12:06:52
阅读次数:
143
【BZOJ2844】albus就是要第一个出场 Description 已知一个长度为n的正整数序列A(下标从1开始), 令 S = { x | 1 <= x <= n }, S 的幂集2^S定义为S 所有子集构成的集合。定义映射 f : 2^S -> Zf(空集) = 0f(T) = XOR A[ ...
分类:
其他好文 时间:
2017-06-18 16:18:44
阅读次数:
172