ST表
LowestJN
强省弱OIer
展开
-
[NEERC13.H][ST表][乱搞]Hack Protection
枚举左端点i,因为左端点固定,那么区间的And值不超过31种(每次And一个数,只可能使这个数二进制下的某一位变成0),那么每次二分出他变化的区间,因为子串xor可以变成两个xor前缀的xor,所以只要找出在这个区间中xor前缀等于B[i] xor A,B[i]为1~i的xor值,A为这个区间的And值。做这题时我是用二分加线段树有两个log,后来想在线段树上二分,打着打着猛然想起有种东西叫ST表…原创 2017-04-17 20:04:13 · 694 阅读 · 0 评论 -
[二分 ST表 杂题] Codeforces875D. High Cry
早知道先看D题就不会掉这么惨了枚举左端点,那么区间或值最多变化log次二分变化的区间,再二分区间或值大于区间最大值的区间用ST表记一下区间最大值、或值#include <cstdio> #include <algorithm> #include <iostream>using namespace std;typedef long long ll;const int N=200010;int n,a原创 2017-10-17 13:11:33 · 638 阅读 · 0 评论