备案的网站如何访问,郑州网站建设价格,赣州爆炸事故,在线图片翻译文章目录解析实现删除所谓线性基#xff0c;就是线性的基 #xff08;逃#xff09;
解析
何为线性基#xff1f; 定义几何BBB为集合SSS的线性基,当且仅当: .S任意子集异或和可以得到的结果#xff0c;用B的子集都也可以得到#xff0c;且B时所有这样的集合中元素最少的…
文章目录解析实现删除所谓线性基就是线性的基 逃
解析
何为线性基 定义几何BBB为集合SSS的线性基,当且仅当: .S任意子集异或和可以得到的结果用B的子集都也可以得到且B时所有这样的集合中元素最少的 线性基的一些重要的性质 1.线性基没有异或和为 0 的子集。 2.线性基中每个元素的异或方案唯一也就是说线性基中不同的异或组合异或出的数都是不一样的。 3.线性基中每个元素的二进制最高位互不相同。 实现
累了 不想打字了 而且我也说不明白 大概就是利用异或的交换律的性质balabala 利用之前的和自己合体拼出S的所有元素 直接看代码吧
void solve(){mi[0]1;for(int i1;i50;i){mi[i]mi[i-1]*2;//printf(i%d mi%lld\n,i,mi[i]);}for(int o1;on;o){ll xa[o];//printf(o%d x%lld\n,o,x);int flag0;for(int i50;i0;i--){if((xmi[i])0) continue;else if(!p[i]){p[i]x;break;}else{x^p[i];}}}
}删除 有一个集合 SSS要求支持加数和删除动态维护线性基。 对于删除一个数 xxx分类讨论 如果 xxx 不在线性基内直接把这个数删掉即可。 如果这个数在线性基内设每个元素在尝试插入线性基时异或的线性基的集合为 PPP那么如果存在一个线性基外的元素 yyy 的 PPP 集合包含 xxx说明这两个元素是等价的直接把那个元素删去即可否则不仅要删除 xxx还要去除其他元素异或 xxx 的影响设在线性基内且 PPP 集合包含 xxx 的最小元素为 yyy则令 x⊕yx\oplus yx⊕y 取代 xxx 元素并另其他在线性基内且 PPP 集合包含 xxx 的元素异或上 yyy。
可以离线时线段树分治还是很香的。