题意 在一颗有点权的树上,选若干个点,使得这些点两两距离大于k,且点权和最大 思路 贪心的取比较大的值即可 将所有点按照深度从大到小排序,如果当前点点权\(a[i]\)大于0,则将距离为k以内的所有点减\(a[i]\) 代表取了当前点,为答案贡献\(a[i]\) 如果下面又扫到大于零的点权 ...
题意:给定N个数,Q次询问,求区间最大异或和。 思路:一开始想的线性基 线段树。单次线性基合并的复杂度为 ,结合线段树,复杂度为O NlogN 显然,超时。 超时代码: View Code 我们考虑离线,把所有询问按右端点排序,然后从左到有处理询问,对于当前询问 L,R 我们把 ,R 所有的数加入线性基,关键是对于每一位,我们保留其为位置,这里肯定是贪心地保留越后面的位置越优。 那么查询的时候,如 ...
2019-01-14 12:57 0 1226 推荐指数:
题意 在一颗有点权的树上,选若干个点,使得这些点两两距离大于k,且点权和最大 思路 贪心的取比较大的值即可 将所有点按照深度从大到小排序,如果当前点点权\(a[i]\)大于0,则将距离为k以内的所有点减\(a[i]\) 代表取了当前点,为答案贡献\(a[i]\) 如果下面又扫到大于零的点权 ...
线性基 线性基是一个可以在 \(\log\) 的时间复杂度内高效处理子集异或问题的数据结构。 准确来说,对于一个集合 \(S\) ,其最大元素为 \(S_{max}\) ,那么 \(S\) 有一个长度为 \(\lceil\log_2 S_{max}\rceil\) 的线性基。 设原集合 ...
线性基是一种数据结构,可以在\(logn\)的时间内计算出所有数的异或最大和以及异或最 小值。 1.线性基里的数都由原数异或得来 2.线性基里任意几个数异或起来的结果都不相等。 3.线性基异或出来的结果的一个集合,与原数异或出来的集合相等(0除外,由性 质2就决定了不会有0的产生 ...
/5869991.html 转载 设数集T的值域范围为[1,2^n−1]。 T的线性基是T的一个子集 ...
stO ppl Orz 蒟蒻写了个模板,通过了对拍检验。 该模板资磁ppl的博客中提到的所有操作,除了getmin和getmax的意义不同。 蒟蒻的getmin和getmax是求线性基内能与x异或出的最小/大值。那么ppl的getmax等价于这里的getmax(0)。 可兼容bitset ...
题意 一个n*m的网格图,每个格子可以染黑色、白色,问你每个格子最多有一个相邻颜色相同的方案数 n,m<=1e5 思路 我们先处理\(1 \times m\)的情况 设\(f[i][j]\)为前\(i\)个格子,最后一个为\(j\)的方案数 可以得到递推式\(f[i][j]=f[i-1 ...
@ 目录 文章信息 开发环境 捕获模块简介 详细代码 维护日志 文章信息 撰写日期 2018.12.20 ...
线性基学习笔记 定义 基:在线性代数中,基(也称为基底)是描述、刻画向量空间的基本工具。向量空间的基是它的一个特殊的子集,基的元素称为基向量。向量空间中任意一个元素,都可以唯一地表示成基向量的线性组合。如果基中元素个数有限,就称向量空间为有限维向量空间,将元素的个数称作向量空间的维数 ...