摘要: 首先第一眼是一个倍增套线性基,但是$O(Qlog^2Vlog^N)=10^{10}$的复杂度... 即使是st表也只是变成了$O(Nlog^2Vlog^N)$啊 考虑点分治,相对于倍增显著减少了线性基合并(一个往另一个里暴力插)这一O(log^2V)的过程 就是在分治到一个询问的两端点分立于两个子树 阅读全文
posted @ 2018-12-04 20:26 Ressed 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 一个比较显然的等比数列求和,但有一点问题就是n和m巨大.. 考虑到他们是在幂次上出现,所以可以模上P-1(费马小定理) 但是a或c等于1的时候,不能用等比数列求和公式,这时候就要乘n和m,又要变成模P 所以我们一开始就模P*(P-1)好了... 很大,要用龟速乘 阅读全文
posted @ 2018-12-04 20:18 Ressed 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 用途 处理关于子集的异或和的问题,比如子集异或和的最大值,或者能不能异或出某个数 原理 从一堆数中处理出一组线性无关(?)的数,使得这些数能异或出的数和原来能异或出的数相同 线性基中,以每个位置为最高位1的数(最多)只有一个,这样就保证了线性无关 做法 依次处理每个数,对于x,从大到小扫描它的每一位 阅读全文
posted @ 2018-12-04 20:13 Ressed 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 考虑计算每个位置的数作为最小值时有多少种情况 方便起见,以位置为第二关键字比较大小,这样就不会出现“相同的”数 可以方便地计算出以i位置为最小值的区间端点的可行位置:[A,i],[i,B] 这是我选的一个区间,那么另一个区间会有两种情况:在[A,B]的范围内或者不在 不妨只考虑另一个区间在i这个区间 阅读全文
posted @ 2018-12-04 19:49 Ressed 阅读(192) 评论(0) 推荐(0) 编辑