线性基
moomhxy
你若是天才,我便是疯子
展开
-
线性基模板
插入 void ins(ll x) //插入 { for(int i = 62; i >= 0; --i) { if(x & (1ll << i)) { if(!p[i]) { p[i] = x; break; } ...原创 2019-07-26 21:07:05 · 150 阅读 · 0 评论 -
HDU 3949-XOR 【线性基】
题意:就是给你n个数,让你求区间异或第k大。是一道模板题,最近刚学,就总结一下板子 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 1e2 + 10; ll p[maxn], d[maxn]; int cnt = 0, flag = 0; void ins(l...原创 2019-07-26 21:09:05 · 144 阅读 · 0 评论 -
HDU 6579-Operation【线性基】
题意:你有两种操作,0是查询[l, r] 区间的异或最大值,1是加入一个值并另n+1,m次操作。 思路:这道题强制在线,记录一下前缀基,在插入的时候维护一个靠右尽可能在高位的区间,每次更新右边的值。 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 50 + 1...原创 2019-07-27 01:00:19 · 181 阅读 · 0 评论 -
牛客网 xor 【线段树+线性基】
题目链接:https://ac.nowcoder.com/acm/contest/884/B 题意: 给你n个集合,m次询问,每次问你[l, r] 的集合能否表示x。 所以我们用线段树来维护线性基的交,又多了个板子,,, #include <bits/stdc++.h> using namespace std; typedef long long ll; #defin...原创 2019-08-18 19:21:54 · 199 阅读 · 0 评论 -
牛客网 XOR【线性基】
题目链接:https://ac.nowcoder.com/acm/contest/881/H 题意:给你一个集合,问你所有异或和为0的子集的大小。 思路: 首先我们可以组成一个基底大小为r,那么剩下n-r个数就在非基底,对这n-r个元素来说,其任意一个都能够与其余n-r-1个元素构成一个数,然后再和基底异或为0,贡献是2^(n - r - 1), 那么总共就是(n - r) * 2 ^ (...原创 2019-08-17 00:34:39 · 117 阅读 · 0 评论