2019年牛客多校第四场 B题xor(线段树+线性基交)


题目链接

传送门

题意

给你\(n\)个基底,求\([l,r]\)内的每个基底是否都能异或出\(x\)

思路

线性基交板子题,但是一直没看懂咋求,先偷一份咖啡鸡板子写篇博客吧~

线性基交学习博客:传送门

代码实现如下

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
using namespace std;

typedef unsigned int ui;
typedef long long LL;
typedef pair pLL;
typedef pair pLi;
typedef pair pil;;
typedef pair pii;
typedef unsigned long long uLL;

#define lson rt<<1
#define rson rt<<1|1
#define lowbit(x) x&(-x)
#define name2str(name) (#name)
#define bug printf("*********\n")
#define debug(x) cout<<#x"=["<

相关