代晨昕讲课笔记整理
作者:互联网
区间线性基
要求q次[l,r]区间内的最大异或和之类的
考虑维护线性基的前缀和,同时要做一些特殊处理
在插入的时候应当尽量将位置靠后的数放在线性基的高位。
即,如果插入时枚举到i位遇到一个该位相同的数,并且插入的数在它的右边,那么把它顶掉,让它异或上自己然后代替自己往后一位枚举。
查询时我们在liner_base[r]中从高往低,如果有在区间内的且异或后能变大的,就异或上,否则看下一位。
这样就可以O(n)维护了
全序贪心问题
给你n个物品,每个物品有几个属性。你需要把它们任意排序后排成一列,使得按某种方式计算的贡献最大(最小)。
分析方法:我们先假装已知最佳顺序,那么交换该序列的任意两项都将使得贡献变小。
据此我们可以把两个序列的贡献表达式写出来,列一个不等式。
将两边化简成【左右结构一样的,且只与一项的属性有关】,那么我们根据这个化简的结果为依据进行排序即可。
Noip2012 国王游戏:
如果把这个问题搬到树上。可以用并查集来做。
标签:化简,基的,讲课,枚举,笔记,插入,异或,代晨昕,线性 来源: https://www.cnblogs.com/linzhuohang/p/15120774.html