摘要:
题面 "题面" 题解 首先我们知道nim游戏先手必败当且仅当所有石堆异或和为0,因此我们的目标就是要使对手拿石堆的时候,无论如何都不能使剩下的石堆异或和为0。 对于一个局面,如果我们可以选取一些可以凑出0的石堆留下(因为不能全部拿走,所以这里至少要拿一堆),那么显然就先手必败了。 因此作为先手,我们 阅读全文
摘要:
题面 "题面" 题解 题意:给定n个01串,求互相异或能凑出多少不同的01串。 线性基的基础应用。 对于线性基中的01串,如果我们取其中一些凑成一个新的01串,有一个重要的性质:任意2个不同方案凑出的01串也不相同。 因此我们只需要求出给定01串的线性基大小,然后求出有多少搭配方案即可,方案数即为$ 阅读全文
摘要:
[TOC] 线性基 定义 线性基 一个由若干数组成的集合$S$,定义它的线性基为最小的一个集合$T$使得$S$和$T$能够异或出的值域(集合)相同 张成 一个集合$S$,随意取若干个数异或,能够凑出的数的集合称为集合$S$的张成,表示为$span(S)$ 线性相关 如果一个集合内有某个数满足:去除这 阅读全文
摘要:
题面 "题面" 题解 先化一波式子: $$D = (A \cdot B C)A^T $$ $$ = \sum_{i = 1}^{n}H_{1i}\cdot A^T_{i1}$$ $$H_{1i} = (\sum_{j = 1}^{n}A_{1j} \cdot B_{ji}) C_{1i}$$ $$D 阅读全文
摘要:
题面 "题面" 题解 如果2个人可以互相战胜,那么我们连一条无向边,于是最后会剩下t个联通块,其中每对联通块之间都有严格的大小关系(a.max using namespace std; define R register int define LL long long define ld doubl 阅读全文
摘要:
对CRT和EXCRT算法的简单小结 阅读全文
摘要:
题面 "题面" 题解 (表示第一段文字导致我在考场上没看懂题……因为我以为这个定义是定义在整个排列上的,所以相似 = 相同。结果其实是可以应用在一个区间上……) 首先我们发现,2个区间相似,其实就是离散化之后相同。 观察到,相似区间的位置是没有影响的,且由于数字两两不同,所以不管相似区间内是哪些数, 阅读全文
摘要:
题面 "题面" 题解 感觉这题挺神仙的,根据一些奇奇怪怪的证明可以得到: 最后的终止状态一定是$m, m, m, m, .... n \% m$. 因此我们可以O(1)计算到终止状态所需步数,然后根据奇偶性即可判断谁胜谁负。 阅读全文
摘要:
题面 "题面" 题解 首先我们知道一个关于除法的重要性质:对于一个固定的$i$,表达式$\frac{i}{m}$的取值只有根号个。 因此我们考虑如何优化SG函数的求解。 观察到在取值相同的同一段中,分完之后只会有m堆取值为x 或者x + 1的石子。 因此我们不需要知道每种取值的石子具体有多少,我们只 阅读全文