![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线性基
quan_tum
这个作者很懒,什么都没留下…
展开
-
[Scoi2016]幸运数字
传送门 题意是求树上一条路径上,于是树上倍增lca暴力合并线性基… 听别人说要加上读优否则过不了… 不会求lca的出门左转 不会线性基的出门右转 真的如果都会了就只剩一个暴力合并了… #include<bits/stdc++.h> #define il inline #define ll long long #define int ll #define max(a,b) (...原创 2018-09-11 21:32:42 · 323 阅读 · 0 评论 -
[TJOI2008]彩灯
线性基板子题,就是要去重。 #include<bits/stdc++.h> #define ll long long using namespace std; int n,m;ll p[63],x,ans;char c; inline void Lb(ll x){for(int i=61;i>=0;--i)if((x>>i)&1){if(!p[i]){p[i...原创 2018-09-11 21:47:37 · 155 阅读 · 0 评论 -
[JLOI2015]装备购买
传送门 此题卡精度。 按权值排序从小到大插入,若存在向量线性相关,则不插入。 用类似线性基的方法维护向量集。 #include<bits/stdc++.h> using namespace std; #define ld long double #define getchar()(p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<...原创 2018-09-12 21:18:08 · 293 阅读 · 0 评论 -
[cqoi2013]新Nim游戏
传送门 线性基的题目。 第一次取完后,要保证剩下火柴中不存在异或和为0的子集。 因此我们需要寻求极大的线性无关组,答案即为总和减去极大线性无关组的权值和。 求最小值就是先sort一遍的贪心。 先手必胜,所以puts(“-1”)期望得分0… #include<bits/stdc++.h> using namespace std; int n,a[105],b[105],p[3...原创 2018-09-13 14:36:27 · 157 阅读 · 0 评论 -
[BeiJing2011]元素
传送门 按魔力值降序排列,然后把按序插入线性基,如果与之前的序号异或和为0则不插入。把魔力值累加起来输出就行了。 至于贪心的证明…不会!!! #include<bits/stdc++.h> #define ll long long using namespace std; struct A{ll d,w;}a[1005]; bool cmp(A a,A b){return a....原创 2018-09-13 15:04:06 · 189 阅读 · 0 评论 -
[Wc2011] Xor
传送门 现在看到XOR就会想到线性基… 因为每条边每被经过一次就要xor一次,所以如果经过两次它的贡献就为0。 我们将路径拆成环和链,处理出环上的xor值,构出线性基。 最后随便找一条链作为初值求最大异或和就行了… #include<bits/stdc++.h> #define il inline #define ll long long using namespace st...原创 2018-09-13 20:45:40 · 221 阅读 · 0 评论