线性基
pbihao
这个作者很懒,什么都没留下…
展开
-
【BZOJ 4269】再见Xor 线性基
首先构造线性基求出最大的异或值,然后再用最大的异或值异或最小的线性基就是次大值。线性基这玩意比较好玩但是很迷,证明还是简单就不说了。#include#include#includeusing namespace std;int n,a[100021],ins[35],ans;int main(){ scanf("%d",&n); for(int i=1;i<=n;i++)sca原创 2017-01-29 18:38:35 · 253 阅读 · 0 评论 -
【BZOJ 2115】[Wc2011] Xor 线性基
环^链=链,所以找到一条从1到n的路径和很多很多环,这时候就可以任意异或了,异或和最大,然后用到线性基。#include#include#include#define cmax(a,b) ((b)>(a)?a=(b):1)#define LL long long#define maxn 200020using namespace std;int n,m,head[maxn],to原创 2016-12-19 15:37:30 · 214 阅读 · 0 评论 -
【BZOJ 2060】[BeiJing2011]元素 线性基
根据线性基的性质保证我们的任意序列构造的之间相互异或都不为0,所以贪心的来建,按照magic从大到小排序,然后从大到小构造线性基,对于每个加入线性基的元素对答案造成贡献#include#include#include#include#define LL long longusing namespace std;int n,ins[65];LL ans;struct node{原创 2016-12-19 12:09:23 · 299 阅读 · 0 评论 -
【BZOJ 4184】shallot 线性基
一开始一直没有想到因为只是在一直思考线性上怎么做,结果这道题很巧妙的运用的是在线段树上,因为每一个数字的影响其实只是在一段区间上的,这个=很显然,然后就类似于线段树上区间修改打懒惰标记,最后全部dfs一下下放标记就好了。一开始一直脑残的开了一个全局的线性基一直mle心塞#include#include#include#include#include#include#incl原创 2017-03-22 12:05:46 · 401 阅读 · 0 评论