码迷,mamicode.com
首页 >  
搜索关键字:dfs序    ( 668个结果
HZOJ Tree
看到换根果断lct啊,然而其实我板子还没有打熟,还不会维护子树信息,于是就挂掉了…… 然而正解并不是lct。 其实好像很久很久以前将lca的时候好像讲到过一道换根的题,当时没有听懂。 直接说正解吧: 把dfs序搞出来用线段树维护。 用一个变量记录当前根节点,操作一直接改就行了。 然后是操作三: 分情 ...
分类:其他好文   时间:2019-09-27 15:18:58    阅读次数:65
luogu SP8093 后缀自动机+树状数组+dfs序
这题解法很多,简单说几个: 1. 线段树合并,时间复杂度是 $O(nlog^2n)$ 的. 2. 暴力跳 $fail,$ 时间复杂度 $O(n\sqrt n),$ 比较暴力. 3. 建立后缀树后在 $dfs$ 序上数点,时间复杂度为 $O(nlogn),$ 十分优秀. Code: ...
分类:编程语言   时间:2019-09-24 12:21:37    阅读次数:96
9.21 注册题
题意 给定一颗点带权无根树,请你选定一个根并对这棵树进行深度优先遍历,得到一个点的经过顺序(即$dfs$序):$v_1,v_2...v_n$,记点$u$的点权为$A_u$ 请最小化下面式子的值 $$ \sum_{i=1}^n i\times A_{v_i} $$ 解法 大佬们都说这题是煞笔题。。我还 ...
分类:其他好文   时间:2019-09-22 23:33:49    阅读次数:93
Educational Codeforces Round 6 E. New Year Tree
题意 给出一个有根树,给出m个操作,操作1表示使得这一棵树的某一个节点的所有子树染上某一种颜色,操作2表示查询这个节点及其子树的颜色数量。 思路 对于一颗有根树来说,我们依靠dfs序就可以变换成为一个有序的序列,所以根据dfs序可以建立线段树。 对于线段树的操作,更新的话,区间更新,推lazy标记, ...
分类:其他好文   时间:2019-09-22 12:34:59    阅读次数:64
数据结构例题2
"题目" 我们开一棵线段树记录某个深度中最大的$dis$。 同时利用dfs序来让每条长链开一个线段树并且保证不重复。 遍历到某个点时,先处理重儿子,然后把自己加入线段树,计算一端为自己另一端在重儿子子树中的答案。 然后处理每个轻儿子,暴力计算一端在该轻儿子所在子树中,另一端在该点已遍历过的子树中的答 ...
分类:其他好文   时间:2019-09-21 10:55:50    阅读次数:79
4771: 七彩树 主席树
题意:给定一棵树 每个结点有一个颜色 然后又m个询问 询问:x d 问x的子树内不超过dep[x]+d 深度的子树结点一共有多少个颜色? 1、可以先将问题简化为问整个子树内有多少个不同的颜色 暴力解法树套树 但是可以用一个技巧来快速维护: 一个颜色一个颜色地处理 把所有相同颜色的点按照dfs序排序, ...
分类:其他好文   时间:2019-09-20 21:14:06    阅读次数:51
0x20 搜索
0x21 树与图的遍历 树与图的深度优先遍历 深度优先遍历,就是在每个点$x$上面的的多条分支时,任意选择一条边走下去,执行递归,直到回溯到点x后再走其他的边 树的DFS序 一般来说,我们在对树的进行深度优先时,对于每个节点,在刚进入递归时和回溯前各记录一次该点的编号,最后会产生一个长度为$2N$的 ...
分类:其他好文   时间:2019-09-14 17:04:45    阅读次数:99
9.13总结
9.13总结 得分情况 35+30+100=165 Rank2 第二题SPFA被卡了!! T1 在DFS序上dp。 设f[i]\[j]表示当前放了i个点,所在的位置x是DFS序最大的那一个,根到x走了j步。 于是有两种转移,就是x新增一个左儿子(此时j+1),或者是找一个dfs序最大,有左儿子但没有 ...
分类:其他好文   时间:2019-09-13 17:55:31    阅读次数:78
HDU - 6704 K-th occurrence (后缀数组+主席树/后缀自动机+线段树合并+倍增)
题意:给你一个长度为n的字符串和m组询问,每组询问给出l,r,k,求s[l,r]的第k次出现的左端点。 解法一: 求出后缀数组,按照排名建主席树,对于每组询问二分或倍增找出主席树上所对应的的左右端点,求第k大的下标即可。 解法二: 建立后缀自动机,对后缀树(fail树)作线段树合并可得到每个结点包含 ...
分类:编程语言   时间:2019-09-12 23:37:36    阅读次数:144
HDU - 5770 Treasure 思维 + 扫描线 + 线段树 (看题解)
HDU - 5770 没想出来, 感觉不应该啊, 没有想到转换成二维上的点的问题。 对于对钥匙和宝藏(u, v), 如果lca != u && lca != v 那么起点从u子树出发, 终点在v子树就能得到贡献。 子树在dfs序下是连续一段, 所以就对应到二维平面一个矩形加上一个数值, 求值最大的点 ...
分类:其他好文   时间:2019-09-12 16:30:39    阅读次数:93
668条   上一页 1 ... 6 7 8 9 10 ... 67 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!