LCA
wJs9528-1
这个作者很懒,什么都没留下…
展开
-
RMQ转换LCA模板 ST算法
原理: void dfs(int k,int d,long long sum) { cost[k]=sum; pos[k]=++tot; ///记录第一次出现的时间戳 F[tot]=k; ///记录欧拉序列 rmq[tot]=d;///记录该时间戳深度 vis[k]=1; for(int i=fir[k];~i;i=nex[i]) {原创 2016-08-09 10:23:47 · 894 阅读 · 0 评论 -
CodeForces 208E Blood Cousins(树剖求lca + dfs序)
题意: 给出若干棵树,q次询问,每次询问某结点n向上k步的父节点的子树中有多少个和n是兄弟结点(深度相同) ps:这里的题意是将问题简化过后的 假设现在只有一棵树,首先考虑结点的子树如何确定,dfs序可以解决,再考虑向上k步的lca如何解决,倍增法求lca(弱不会),由于只会树剖向上爬,外加上树剖可以直接处理dfs序,所以就写树剖了…对于子树内符合条件的结点,只需要开10510^5个深度的ve原创 2016-09-02 10:31:21 · 531 阅读 · 0 评论