
线性基
twh233
嘻嘻
展开
-
BZOJ2460 线性基裸题
传送门显然这道题可以用线性基来维护一个我们选取的非空子集中不存在异或出0的情况,但是我们还需要得到的权值最大,那么直接对于每件物品按权值排序,按权值从大到小插入到线性基中就可以保证得到的线性基中的元素是权值之和最大的。/// .-~~~~~~~~~-._ _.-~~~~~~~~~-./// __.'原创 2017-10-31 23:18:18 · 345 阅读 · 0 评论 -
Intel Code Challenge Final Round Xor-matic Number of the Graph -- 线性基
传送门点x到点y的路径可以是一条从x到y的路径与若干个环的异或和首先搞出一棵dfs树,并且得到树上每个环的xor值。 我们发现,两点间就是本来的dis xor 某些环的xor值,即可组合得到一些新的异或值。位运算的题目,我们显然按位来做。 首先,对于两个这一位同时为1或者同时为0的,我们考虑若要有贡献,必须是从环上得到一个这一位为1的xor值,如果线性基这一位都是0则无原创 2017-11-02 20:13:32 · 313 阅读 · 0 评论 -
SGU 275 - To xor or not to xor 按位贪心 线性基
传送门给定 n(1\le n\le 100000)n(1≤n≤100000) 个数 a_1, a_2, \ldots, a_na1,a2,…,an,请问这些数能够组成的最大异或和是什么?按位贪心从高位到低位枚举二进制位D1.找出第L位为1的数ai,如果找到则转2,否则转42.若ans的第L位为0,ans^原创 2017-11-02 20:52:44 · 754 阅读 · 0 评论 -
BZOJ2115 线性基 对于异或环的处理
传送门这道题要求从1到n的最大xor和路径,存在重边,允许经过重复点、重复边。那么 在图上作图尝试之后就会发现,路径一定是由许多的环和一条从1到n的路径组成。容易发现,来回走是没有任何意义的,因为来回走意味着抵消。考虑这道题求得是路径xor和最大,所以必然我们要想办法处理环的情况。我的做法是任意地先找出一条从1到n的路径,把这条路径上的xor和作为ans初值(先不管为什么可行)原创 2017-11-01 22:47:54 · 695 阅读 · 0 评论 -
hdu 3949(线性基模版) 异或和中第k小的数
传送门给定 n(n \le 10000)n(n≤10000) 个数 a_1, a_2, \ldots, a_na1,a2,…,an,以及 Q(Q\le 10000)Q(Q≤10000) 个询问,每次询问这些数(至少一个,不能不选)能够组成的异或和中第 kk 小的数是什么(去掉重复的异或和)。显然,因为线性基可以不重复的表示所有结果。它和原数原创 2017-11-03 12:52:36 · 690 阅读 · 0 评论 -
BZOJ 2844 线性基 不去重的第一个出现的位置
传送门本题不去重,所以要乘每个结果出现的次数 然后就是一个什么性质:S异或起来会出现重复,但是重复了多少次呢?若我构造一个大小为k的线性基,那么重复了2^(n-k)次。然后构造出需要的数,就每次找到能消去位数的地方消去就好。/// .-~~~~~~~~~-._ _.-~~~~~~~~~-.///原创 2017-11-03 18:17:32 · 228 阅读 · 0 评论 -
Codeforces Round #448 (Div. 2) C. Square Subsets
http://codeforces.com/contest/895/problem/C题意:n个数里,随意选k个数,他们的乘积是完全平方数,问有多少种选择,白书上的原题 另外hdu 5833。T的线性基是T的一个子集A={a1,a2,a3,...,an}。A中元素互相xor所形成的异或集合,等价于原数集T的元素互相xor形成的异或集合。可以理解为将原数集进行了压缩。做一原创 2017-11-28 22:31:33 · 378 阅读 · 0 评论