
线性基
zxyoi_dreamer
退役了退役了爬了爬了,搞个锤子算法竞赛,不如好好享受大学生活。
展开
-
2018.09.25【BZOJ2115】【洛谷P4151】【WC2011】最大XOR和路径(线性基)
BZOJ传送门洛谷传送门解析:额这道题可能是WCWCWC场上的签到题。但不知道为什么被标成了黑题。。。感觉不是一般WCWCWC的水平啊。太简单了一点吧。。。思路:我们发现,重复的走过同一条路径对答案是没有任何贡献的。异或的自反性使得这道题十分的奇妙。我们随便记录每个点到1的任意一条路径的前缀异或和。发现当我们随便选出一条从1到nnn的路径之后,只有与1或nnn联通的环能够更新答...原创 2018-09-25 23:49:43 · 248 阅读 · 0 评论 -
【51nod1312】最大异或和(线性基)(高斯消元)(贪心)
传送门题解:首先塞到线性基上面。显然线性基外面的数全部可以变成最大异或和。线性基里面的,先高斯消元,然后将最大的基变成最大异或和。剩下的基显然最好的结果就是直接和最大异或和xor起来。直接贪心即可。代码:#include<bits/stdc++.h>#define ll long long#define re register#define cs const...原创 2019-08-30 21:37:03 · 193 阅读 · 0 评论 -
【CF 338D】Fox and Perfect Sets(线性基)(数位DP)
传送门题解:显然所有合法集合可以直接用线性基表示出来。考虑怎么唯一表示,显然是将线性基高斯消元搞成下三角矩阵。当这一位上有基的时候,不允许线性基中其他位置出现这一位上的111,否则上面的位置可以任意选择。从高位向低位数位dp,设状态f[i][j][0/1]f[i][j][0/1]f[i][j][0/1],表示处理了前iii个高位,线性基中已经有jjj个元素,当前的最大xor和是否卡kk...原创 2019-08-30 21:16:36 · 189 阅读 · 0 评论 -
【TC SRM 670】【TC 13891】【BZOJ4671】Gxor(斯特林反演)(线性基)(高斯消元)
传送门题解:枚举一下连通块,不同块之间不允许连边,同块之间允许任意连边。然后高斯消元算一下方案数。我们需要算的是111个连通块的方案数。考虑一个实际连通块数量为ttt的图,它会在我们枚举kkk个连通块的时候被算St,kS_{t,k}St,k次。考虑∑i(−1)i−1Sn,i(i−1)!=[n=1]\sum_{i}(-1)^{i-1}S_{n,i}(i-1)!=[n=1]∑i(−1...原创 2019-08-23 21:43:59 · 272 阅读 · 0 评论 -
【BZOJ3811】【清华集训2015】玛里苟斯(线性基)
传送门解析:还是挺好想的,首先对于k=1的情况,如果某一个数在这一位上有1,那么最终结果中这一位为1的概率就是0.5。有一个很显然的性质,所有异或结果出现概率(或者说方案数)相同。其次,对于k=2的情况,线性基上高消,然后直接考虑每个二元组就行了。对于剩下的,由于保证答案不超过2632^{63}263,所以数本身不超过2212^{21}221,直接暴力干就行了。代码:#inclu...原创 2019-06-11 20:01:50 · 265 阅读 · 0 评论 -
2019.01.23【BZOJ4644】经典傻逼题(线段树分治)(线性基)
DarkBZOJ传送门解析:没有注意到会先输入一个测试点编号WA了好几发。。。其实还是挺好想的。思路:首先注意到异或的性质,也就是自反性。考虑一条边的答案什么时候会被算到。就是我们选出的点集只包含了它的一个端点。没选的时候不算,选两个的时候也不算。很显然我们只需要维护每个点的点权为所有它上面的边的边权异或和就行了。那么我们要做的就是每次选择一个点集,使得这个点集的异或和最大。...原创 2019-01-23 10:37:59 · 341 阅读 · 0 评论 -
2019.01.01【SCOI2016】【BZOJ4568】【洛谷P3292】幸运数字(线性基)(点分治)
BZOJ传送门洛谷传送门解析:第一眼倍增+线性基合并O((n+m)lognlog2∣Gi∣)O((n+m)\log n\log^2|G_i|)O((n+m)lognlog2∣Gi∣),复杂度过不了。第二眼树分块+线性基合并O((n+m)nlog2∣Gi∣)O((n+m)\sqrt n\log^2|G_i|)O((n+m)nlog2∣Gi∣),复杂度过不了。算了写点分治吧。。...原创 2019-01-01 23:15:59 · 228 阅读 · 0 评论 -
2018.12.07【LOJ114】k 大异或和(线性基)(高斯消元)
代码:#include&amp;lt;bits/stdc++.h&amp;gt;using namespace std;#define ll long long#define re register#define gc get_char#define pc put_char#define cs constnamespace IO{ cs int Rlen=1&amp;lt;&amp;lt;18|1; ch...原创 2018-12-07 23:44:10 · 277 阅读 · 0 评论 -
【模板】线性基
参考题目:洛谷P3812解析:模板题题解从来看心情写系列~也许zxyoizxyoizxyoi做梦的时候会来更新这个模板。放心啦,早晚会更新的代码:#include<bits/stdc++.h>using namespace std;#define ll long long#define re register#define gc getchar#define ...原创 2018-09-25 23:56:57 · 167 阅读 · 0 评论 -
【校内模拟】xor(线性基)(贪心)
读优写挂见祖宗题解:注意到一条边存在于割CCC中当且仅当它的两个端点属于不同的点的集合。对于割C=<S,T>C=<S,T>C=<S,T>其权值为SSS中每个点相邻的边的权值的异或和。设每个点的权值为所有相邻边的权值的异或和,则我们需要选出一个点的权值的极大线性无关组,使得www之和最大。直接贪心即可,正确性显然。如果说我们能够用几个www较小的替换一...原创 2019-09-23 10:08:55 · 146 阅读 · 0 评论