摘要: 对于一条路径x-y:·若x与y成祖先-孩子关系,假设y是x的祖先,z是y到x方向的第一个节点,则包含它的路径满足:起点在x的子树里,且终点不在z的子树里。·若x与y不成祖先-孩子关系,则包含它的路径满足:起点在x的子树里,且终点在y的子树里。于是每个盘子可以拆成一个或两个矩形,每个水果可以当成两个点... 阅读全文
posted @ 2015-09-08 20:03 Claris 阅读(892) 评论(0) 推荐(0) 编辑
摘要: 一个点的感染时间为它到根路径上虚边数+1。用Link-Cut Tree模拟虚实边切换,每次切换时等价于在一段或两段DFS序区间更新,线段树维护即可。时间复杂度$O(n\log^2n)$。#includetypedef long long ll;const int N=100010,M=262145;... 阅读全文
posted @ 2015-09-08 16:15 Claris 阅读(640) 评论(0) 推荐(0) 编辑
摘要: 用后缀树统计出出现了x次的本质不同的子串的个数,最后再乘以x,得到一个多项式。这个多项式常数项为0,但是一次项不为0。于是把整个多项式除以一次项,通过多项式求ln和多项式求exp求出它的幂。最后再把除掉的项乘回来即可,时间复杂度$O(n\log n)$。#include#includetypedef... 阅读全文
posted @ 2015-09-08 10:39 Claris 阅读(440) 评论(0) 推荐(0) 编辑