首页 > 其他分享 >线性基

线性基

时间:2025-01-09 12:10:35浏览次数:1  
标签:每个 可以 元素 异或 线性 基底

这几天很困而且肚子吃坏了导致这一章学的奇慢,此事在我的犇犇中亦有记载。

线性基就是向量基底。

oi里头喜欢用异或线性基,就是把原本基底表示的求和改成异或。

所以可以拿来解决异或问题。

称集合 \(B\) 为 \(S\) 的线性基当且仅当 \(B\) 对于它代表的集合 \(S\) 满足 \(S\) 任一子集的异或和均可以通过 \(B\) 的子集异或和表示,且 \(B\) 是所有那样的集合中 \(|B|\) 最小的若干个。

对于线性基的构造:参考高中数学的基底 \(\{u\}\),每一个基底中的元素 \(u_i\) 都至少应该表示出唯一的一维信息,不唯一的信息则可以用其他于那些维唯一的基底元素抵消掉,进而显然存在一个 \(D\) 维方程组使得对于任意一维 \(D_0\) 满足

\[a_{D_0,1}u_1+a_{D_0,2}u_2+...a_{D_0,D}u_D=(0,0,...1...0,0) \]

就能转成正交基。

异或线性基是一个道理的,相当于在一个 \(logV\) 维的空间中的一组基底,每个二进制位对应的那个 \(u\) 可以唯一地表示出那一维度的 \(1\),进而让其最高位就是那个 \(1\) 就能保证唯一性质了。

所以有一种贪心构造。

	int p[32];
	inline void insert(int x){
		for(int i=31;i>=0;i--){
			if((x>>i)&1){
				if(!p[i]){
					p[i]=x;
					return ;
				}
				else x^=p[i];
			}
		}
	}

对于当前插入的 \(x\),必须保证其成为基底的第 \(i\) 项时前 \(i-1\) 位没出现过 1,那就可以在前 \(i-1\) 位的每个 1 处异或一下那一位的基底。

看一下这个线性基能干啥。

根据上面的构造方式,把线性基从高往低扫一下贪心取最大就能获得原数组的最大异或和,传参一个询问值就能解决原数组的子集和询问值的最大异或和。

板题

又根据定义,线性基的元素个数最小,所以无论怎么插生成的线性基元素个数都一样。就可以解决一类贪心问题。

元素

新nim游戏

线性基可以求第 \(k\) 大/小异或值,还能统计个数。

P4869

显然线性基能唯一地表示出 \(2^{|B|}\) 个值,但是原数组共有 \(2^n\) 个异或值,剩下数组中的 \(n-|B|\) 个元素肯定存在和 \(B\) 子集异或和为 0 的情况,那不妨就把它们看作是 0,选不选都不影响异或值,则每个 \(2^{|B|}\) 个去重的异或和应当出现了 $2^{n-|B|} $ 次。

神秘题 和它的 多倍经验

不妨现在已经构造出了一种随机赋边权的方案,使得对于每个会使图不连通的询问边集 \(E_0\) 中包含的图的割 \(E'\) 的异或和为 0。这样只需对询问边集建线性基即可。这tm谁能想到

然后看怎么构造,考虑逐步扩展问题规模,对于只有一个点只要出边异或和为 0 即可。对于两个点的情况发现可以靠和异或一样效果的容斥抵消成刚才的结论。对于 \(n\) 个点是同理的。所以考虑生成一个赋权方案使得每个点的出边异或和为0。对于非树边就随机权值,树边就给成已确定的权值的异或和,不难发现从叶子赋到根是正确的。

shallot

发现可以线段树分治每个元素存在时的贡献,然后没了。

幸运数字

\(n\) 啥的不大时限还贼宽直接倍增维护 \(2^i\) 级父亲线性基乱搞就能秒。

最大xor和路径梦想封印

这种题就是说路径是非简单路径。仔细想一下环可以拿来优化答案,链可以拿来跑答案,把每个环的贡献存到线性基里就可以了。

梦想封印那道题离线拆边改加边然后拿set维护一下线性基,每次加边就重构,是 \(O(log^2n)\) 的。

标签:每个,可以,元素,异或,线性,基底
From: https://www.cnblogs.com/Claimo0611/p/18661903

相关文章

  • 线性表示代码
    importtorchimportmatplotlib.pyplotaspltPython中用于导入matplotlib库并将其pyplot模块简称为plt的常见语句。matplotlib是一个功能强大的绘图库,而pyplot是其提供的一个基于状态机的接口,用于创建各种类型的可视化图表y=x*w+bdefcreate_data(w,b,da......
  • XTR105 XTR105UA/2K5规格书具有传感器激励和线性化的 4mA 至 20mA 电流变送器芯片
    XTR105是一款带有两个精准电流源的单片4mA至20mA、2线制电流发送器。该器件在一个单集成电路上提供针对铂RTD温度传感器和桥、仪表放大器以及电流输出电路的完整电流激励。多用途线性化电流提供一个对RTD的第二阶修正,通常可以实现一个40:1的线性改进。仪器放大器增益可......
  • 【数据结构与算法】之线性表:栈和队列个人总结
    进度好慢呀!冲冲冲!希望能在17号之前过完一遍数据结构基础!现在也有在做题,但是做题好慢,有的看题解也不理解,......
  • 蓝桥19865 线性规划
    太久没碰这种数学了,写的比较笨数列前k项≤2N的情况进行线性规划,约束条件有a+(k-1)d≤2n,a+kd>2n,前k项求和>2n在k≥3时,约束条件2包含约束条件3,a+(k-1)d≤2n,a+kd>2n,在[3,inf)上区域求和,就是a+2d≤2nk=1,2为特殊情况,k=1时无法满足,k=2时约束条件......
  • 线性代数10.矩阵的初等变换&矩阵的标准形
    10.矩阵的初等变换10.1矩阵初等变换的规则对于任意存在第\(i,j\)两行、或第\(i,j\)两列的矩阵,满足以下初等变换规则:10.1.1对调对调\(i,j\)两行,记为:\(r_i\leftrightarrowr_j\)对调\(i,j\)两列,记为:\(c_i\leftrightarrowc_j\)以上运算均可逆10.1.2乘以\(k\)(\(k\in......
  • 线性规划对偶小记
    有\(n\)个变量\(x_1,x_2,\dots,x_n\),有若干条限制,形如:\(f(x_1,x_2,\dots,x_n)\leb\)\(f(x_1,x_2,\dots,x_n)=b\)\(f(x_1,x_2,\dots,x_n)\geb\)三种不同形式(注意不能取小于或大于号),可称这些限制是线性的。同时,需要最大化\(\sum\limits_{i=1}^......
  • 素数的几种常见线性筛法
    目录前言一.遍历查找二.埃氏筛法三.欧拉筛法(终极版)结语前言    前些天写了一个查找范围区间的素数个数的题目,有两组数据一直tle,所以就特此学习了一些素数算法,所以又写了一遍,一是为了让自己对代码的熟悉程度有提高,一方面也是积累自己的算法模板。一.遍历查找......
  • 如何理解拟合模型之最小二乘法(线性回归)
    一、定义:一种用于拟合模型的数学方法,目标是找到一组模型参数,使得模型的预测值与真实值之间的误差平方和最小。二、核心思想:通过最小化误差,让模型尽可能接近训练数据三、应用场景:在回归分析中,最小二乘法广泛用于寻找数据点的最佳拟合直线或曲线。例如:在线性回归中,最小二乘......
  • 基于自抗扰控制器和线性误差反馈控制律(ADRC-LSEF)的控制系统simulink建模与仿真
    1.课题概述基于自抗扰控制器和线性误差反馈控制律(ADRC-LSEF)的控制系统simulink建模与仿真。 2.系统仿真结果  3.核心程序与模型版本:MATLAB2022a 4.系统原理简介      自抗扰控制器(ActiveDisturbanceRejectionController,ADRC)结合线性误差反馈控......
  • 线性代数9.矩阵的逆-分块矩阵
    9.矩阵的逆-分块矩阵9.1分块矩阵的加法设矩阵\(A、B均为m\timesn\)的矩阵,且A、B均按相同的方式划分为\(s\timest\)块,其中:\[A=\begin{bmatrix}A_{11}&...&A_{1t}\\&...&\\A_{s1}&...&A_{st}\\\end{bmatrix}\]\[B=\begin{bmatrix}B_{11}&...&B_......