摘要: 都快忘了在这类题的经典做法了…… 将字符串一个个的插入字典树,在字典树维护好有该前缀串s的最大编号字符串j,我们记作j控制了前缀串s 对于当前的第i个字符串,维护此时有当前每个字符串控制了多少个前缀串,用一个线段树维护。 由于询问是在线的,所以用主席树来维护。于是对一个询问(l,r),在第r个线段树 阅读全文
posted @ 2016-08-25 14:48 acphile 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 从(u,v)到(n,m)相当于走x步1*2和y步2*1满足 x+2y=n-u,2x+y=m-v 解方程然后组合计数即可。 以前没写过lucas定理,写一下…… 其实就是C(n,m)%p=C(n/p,m/p)*C(n%p,m%p)%p 顺便这题的容斥有特殊性,只要把点排序,然后用f[i]表示到第i个障 阅读全文
posted @ 2016-08-25 14:40 acphile 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 以前从来没写过求点双连通分量,现在写一下…… 这题还用到了一个叫做block forest data structure,第一次见过…… ——对于每一个点双联通分量S, 新建一个节点s, 向S中每个节点v连边. 这样一来, 新增的点和原来图中的点会构成一个森林 主要是这个性质很厉害: 【对于这个森林 阅读全文
posted @ 2016-08-25 14:33 acphile 阅读(263) 评论(0) 推荐(0) 编辑