摘要: 整体二分是将所有操作离线下来,对多组询问同时进行二分。 将所有操作按照时间顺序存入数组,设$[st,ed]$为答案的定义域,即询问的区间,$[l,r]$为答案的值域。 二分答案的值域,对于每个询问去比较和$mid$的关系,据此判断是递归进入值域$[l,mid]$还是值域$[mid+1,r]$,当$l 阅读全文
posted @ 2022-11-14 17:50 半步蒟蒻 阅读(172) 评论(0) 推荐(0)
摘要: 左偏树是可并堆的一种,支持在O(log2(N))的时间复杂度内进行合并的堆式数据结构。 定义外结点:lc或rc为空结点。 定义零距离:x的距离dis[x]为x子树内与x最近的外结点到x的距离,空结点dis=-1. 左偏树具有堆性质,若为小根堆,对于所有x,v[x]<=v[lc],v[x]<=v[rc 阅读全文
posted @ 2022-11-14 17:49 半步蒟蒻 阅读(35) 评论(0) 推荐(0)
摘要: 最小斯坦纳树,是在无向图中,花费最小的代价,联通给定的k个关键点,组合优化问题 答案一定是一棵树,若存在环,则其中任意一条边可以删去且答案变小 状压dp,设f[i][s]为以i为根的子树包含几何状态s的最小花费,分类讨论转移: 1. i的度数为1,枚举树上与i相邻的点j,用f[j][s]+f[j][ 阅读全文
posted @ 2022-11-14 17:49 半步蒟蒻 阅读(60) 评论(0) 推荐(0)
摘要: 回文树(EER Tree,Palindromic Tree)亦称回文自动机,用于存储一个串中的所有回文子串。 由于回文串可能有奇有偶,于是分为两棵树进行构建,偶跟编号为0,长度为0,fail指向奇根,奇根编号为1,长度为-1,fail指向自身。 fail指向的是该节点的最长回文后缀,新加入字符时跳f 阅读全文
posted @ 2022-11-14 17:48 半步蒟蒻 阅读(82) 评论(0) 推荐(0)
摘要: 一般常用SPFA 对于求最大值 当然要跑最短路 每个不等式转化为a-b<=x 连边b->a,val=x dis[a]>dis[b]+x才能松弛为 dis[a]<=dis[b]+x 当求最小值时 就跑最长路 每个不等式转化为a-b>=x 连边b->a,val=x dis[a]<dis[b]+x才能松弛 阅读全文
posted @ 2022-11-14 17:48 半步蒟蒻 阅读(19) 评论(0) 推荐(0)
摘要: 通过在字符串之间的每个空位内插入字符,是的奇数和偶数成为一样得情况,从而能够统一处理。 用len[]记录每个点能够扩展出的最长半径,mx记录扩展到的最远右端点,id记录mx为右端点时的mid,即对称轴,设i关于mid的对称轴为j。 关于i和mx的位置进行分类讨论: 若i在mx右边,则直接进行暴力。 阅读全文
posted @ 2022-11-14 17:48 半步蒟蒻 阅读(29) 评论(0) 推荐(0)
摘要: AC自动机以trie为基础,首先将若干模式串插入trie树中,之后构建fail指针和AC自动机,即由trie树变为trie图。 fail指针的定义是,对于当前点x,从根到x形成的字符串为s,x的fail指针指向y,其中满足根到y形成的字符串t是s的最长后缀。 BFS构建AC自动机,第二层的所有节点的 阅读全文
posted @ 2022-11-14 17:48 半步蒟蒻 阅读(67) 评论(0) 推荐(0)
摘要: struct Vector{ double x,y; const double pi=acos(-1),eps=1e-10; inline Vector(double a=0,double b=0):x(a),y(b){} inline Vector operator=(Vector a){ ret 阅读全文
posted @ 2022-11-14 17:48 半步蒟蒻 阅读(70) 评论(0) 推荐(0)
摘要: hash函数,通常用于将字符串映射到整数的函数,一般将值域映射到1e9或1e18以内,尽量避免哈希冲突并且便于比较。 选取哈希进制base和模数mod,尽量选取质数,对于一个字符串s的哈希值就是f(s)=sum(i=1->l)(s[i]*base^(l-i)%mod). 比较两个字符串相等时,可以直 阅读全文
posted @ 2022-11-14 17:48 半步蒟蒻 阅读(778) 评论(0) 推荐(1)
摘要: 1.对于取模中有减法的操作,要加上$mod$再$%mod$,不然会有极大概率出现负数 2.对于有关组合数的预处理中,$facinv[N]=po(fac[N],mod-2,mod)$,注意是$N!$的$mod-2$次幂,而不是$N$的$mod-2$次幂 3.对于递归分治之类的函数,如果写非$void$ 阅读全文
posted @ 2022-11-14 17:45 半步蒟蒻 阅读(116) 评论(0) 推荐(0)